Имеется клиент, который пользуется 3G интернетом, соответственно NAT и серый IP адрес. Имеется необходимость туда попадать на сервер терминалов и IP камеры. Я решил сделать подключение к уже имеющемуся серверу OpenVPN. И оттуда прокинуть порты на камеры и сервер. У клиента используется 3G роутер TP-Link TL-MR3020.
На него залил прошивку OpenWRT Attitude Adjustment Beta 2.
Прошивку берем тут и прошиваем из вебморды стоковой прошивки роутера, как при обычном обновлении.
Так как на борту флеш объемом всего 4Мб, то пришлось поставить туда усб хаб и флешку. Но чтобы увиделась флешка сначала нужно доустановить пакеты.
Cоздаем точку подключения:
Я флешку на компе заранее отформатировал в ext4, маунтим ее:
Сначала была еще мысль создать на флешке раздел под swap, но потом передумал, вдруг мало ли сдохнет флешка от постоянной перезаписи.
Копируем туда установленные пакеты:
Немного правим конфиг:
чтобы выглядело вот так:
затем перезагружаем роутер
Теперь мы не ограничены исходным размером flash роутера. И можем себе позволить поставить практически все :)
Смотрим свободное место:
Устанавливаем необходимые нам пакеты:
Для нормальной работы mc нужно выполнить две строчки:
И чтобы каждый раз их не выполнять руками нужно их добавить в
Затем копируем на роутер в
Правим конфиг
затем запускаем
Теперь настраиваем 3g. Устанавливаем пакеты:
Добавляем в
option 'proto' '3g'
Перезагружаем роутер и проверяем:
Все отлично работает, несмотря на задержки. Другого интернета нет, так как здание находится далековато от всего, и подключить человеческий интернет стоит слишком дорого, то приходится довольствоваться этим. 3g модем Huawei e150, у кторого принудительно включен режим только модем, с другими модемами придется возможно поплясать.
Подробнее про подключение флешки и размещению пакетов почитать можно тут, про openvpn тут
На него залил прошивку OpenWRT Attitude Adjustment Beta 2.
Прошивку берем тут и прошиваем из вебморды стоковой прошивки роутера, как при обычном обновлении.
Так как на борту флеш объемом всего 4Мб, то пришлось поставить туда усб хаб и флешку. Но чтобы увиделась флешка сначала нужно доустановить пакеты.
opkg install kmod-usb-uhci kmod-usb-storage block-mount kmod-fs-ext4insmod usb-ohciCоздаем точку подключения:
mkdir /mnt/sda1Я флешку на компе заранее отформатировал в ext4, маунтим ее:
mount -t ext4 /dev/sda1 /mnt/sda1 -o rw,syncСначала была еще мысль создать на флешке раздел под swap, но потом передумал, вдруг мало ли сдохнет флешка от постоянной перезаписи.
Копируем туда установленные пакеты:
tar -C /overlay -cvf - . | tar -C /mnt/sda1 -xvf –Немного правим конфиг:
vi /etc/config/fstabчтобы выглядело вот так:
config 'mount'option target /overlayoption device /dev/sda1option fstype ext4option options rw,syncoption enabled 1option enabled_fsck 1затем перезагружаем роутер
rebootТеперь мы не ограничены исходным размером flash роутера. И можем себе позволить поставить практически все :)
Смотрим свободное место:
df -hFilesystem Size Used Available Use% Mounted onrootfs 504.4M 25.0M 453.8M 5% //dev/root 2.0M 2.0M 0 100% /romtmpfs 14.3M 168.0K 14.1M 1% /tmptmpfs 512.0K 0 512.0K 0% /dev/dev/sda1 504.4M 25.0M 453.8M 5% /overlayoverlayfs:/overlay 504.4M 25.0M 453.8M 5% /Устанавливаем необходимые нам пакеты:
opkg install openvpn nano mc luci-i18n-russianДля нормальной работы mc нужно выполнить две строчки:
export TERMINFO=/usr/share/terminfoexport TERM=xtermИ чтобы каждый раз их не выполнять руками нужно их добавить в
/etc/profile:nano /etc/profileЗатем копируем на роутер в
/etc/openvpn/ ключи и сертификаты созданные на сервере openvpn:ca.crtdh1024.pemclient.crtclient.keyta.keyПравим конфиг
nano /etc/config/openvpnpackage openvpnconfig openvpn client option enabled 1 option client 1 option dev tun option proto udp list remote "remote.server.ip 1194" option resolv_retry infinite option nobind 1 option persist_key 1 option persist_tun 1 option ca /etc/openvpn/ca.crt option cert /etc/openvpn/client.crt option key /etc/openvpn/client.key option dh /etc/openvpn/dh1024.pem option ns_cert_type server option tls_auth "/etc/openvpn/ta.key 1" option comp_lzo 1 option verb 0затем запускаем
openvpn/etc/init.d/openvpn start/etc/init.d/openvpn enableТеперь настраиваем 3g. Устанавливаем пакеты:
opkg install kmod-usb-serial kmod-usb-serial-optionДобавляем в
/etc/config/networknano /etc/config/networkconfig 'interface' 'wan'option 'ifname' 'ppp0'#option 'pincode' '1234'; у кого включена проверка pin кода раскомментировать строчкуoption 'device' '/dev/ttyUSB0': может быть другим, проверяйте с помощью dmesgoption 'apn' 'home.beeline.ru'; указываем свою apnoption 'service' 'umts'option 'proto' '3g'
#option 'username' 'yourusername'; у некоторых ОПСОСов требуется#option 'password' 'yourpassword'; авторизация при подключенииПерезагружаем роутер и проверяем:
ping 192.168.254.1 -c 5PING 192.168.254.1 (192.168.254.1): 56 data bytes64 bytes from 192.168.254.1: seq=0 ttl=64 time=947.409 ms64 bytes from 192.168.254.1: seq=1 ttl=64 time=606.373 ms64 bytes from 192.168.254.1: seq=2 ttl=64 time=576.448 ms64 bytes from 192.168.254.1: seq=3 ttl=64 time=554.852 ms64 bytes from 192.168.254.1: seq=4 ttl=64 time=503.695 ms--- 192.168.254.1 ping statistics ---5 packets transmitted, 5 packets received, 0% packet lossround-trip min/avg/max = 503.695/637.755/947.409 msifconfig3g-wan Link encap:Point-to-Point Protocol inet addr:172.20.17.132 P-t-P:10.64.64.64 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:220 errors:0 dropped:0 overruns:0 frame:0 TX packets:234 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:25248 (24.6 KiB) TX bytes:23382 (22.8 KiB)tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:192.168.254.105 P-t-P: 192.168.254.106 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:10 errors:0 dropped:0 overruns:0 frame:0 TX packets:10 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:840 (840.0 B) TX bytes:840 (840.0 B)Все отлично работает, несмотря на задержки. Другого интернета нет, так как здание находится далековато от всего, и подключить человеческий интернет стоит слишком дорого, то приходится довольствоваться этим. 3g модем Huawei e150, у кторого принудительно включен режим только модем, с другими модемами придется возможно поплясать.
Подробнее про подключение флешки и размещению пакетов почитать можно тут, про openvpn тут