|
|||||||
Тонкая настройка OpenVPN в Linux - Не пропускаем трафик мимо OpenVPN
Время создания: 10.09.2015 14:21
Текстовые метки: OpenVPN, vpn, траффик, настройка
Раздел: Компьютер - Web / Internet - VPN - Virtual Private Network
Запись: xintrea/mytetra_syncro/master/base/1441884119aebujenv2p/text.html на raw.github.com
|
|||||||
|
|||||||
Не пропускаем трафик мимо OpenVPN OpenVPN - относительно безопасный инструмент, но лишь при его правильном использовании. Дело в том, что запуская OpenVPN он не блокирует (и не шифрует) трафик, который может пройти мимо vpn в случае, если ваш сервер vpn по каким-то причинам стал недоступен, либо у вас временно пропала связь. Для того чтобы обезопасить отправляемую и принимаемую информацию необходимо настроить фаервол на стороне клиента таким образом, дабы ему можно было отправлять и принимать пакеты лишь с одного и на один сервер, то есть лишь на ваш vpn-сервер, все остальные подключения должны отсекаться. Cоздаём файл со следующим содержанием: *filter :INPUT DROP [145:11482] :FORWARD DROP [0:0] :OUTPUT DROP [18518:3426455] -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A OUTPUT -d XXX.XXX.XXX.XXX/32 -p tcp -j ACCEPT -A OUTPUT -d XXX.XXX.XXX.XXX/32 -p udp -j ACCEPT -A INPUT -i lo -j ACCEPT -A OUTPUT -o tun0 -j ACCEPT -A OUTPUT -o tun1 -j ACCEPT COMMIT Где XXX.XXX.XXX.XXX - адрес VPN-сервера. Кладём его например в /etc/openvpn/iptables.rules. NB! обратите внимание на то, нет ли в вашем iptables каких-либо правил по команде iptables-save, если есть - добавьте в конфиг, иначе они затрутся; либо перепишите правила командами iptables Пишем удобные скрипты запуска OpenVPN По тому же адресу создаём скрипт /etc/openvpn/vpn_up.sh: #!/bin/sh # подгружаем правила iptables-restore </etc/openvpn/iptables.rules # запускаем openvpn в screen (если его нет, то ставим, либо используем nohup) screen -dmS openvpn --config /etc/openvpn/config.ovpn Где /etc/openvpn/config.ovpn - путь к вашему конфигу. Запускаем OpenVPN и применяем правила iptables при загрузке системы Добавляем в файл /etc/rc.local запуск скрипта: ... /bin/sh /etc/openvpn/vpn_up.sh ... Смотрим статус/отключаем OpenVPN Бывают ситуации когда OpenVPN перестаёт работать и необходимо посмотреть что произошло, либо его вообще необходимо отключить. Логинимся под root и заходим в screen: $ sudo su # screen -x openvpn Смотрим всё ли в порядке, если что - отключаем по сочетанию Ctrl+C. Но это не всё, необходимо обнулить правила фаервола, чтобы он пустил нас без VPN. Создаём скрипт ~/.bin/iptables_flush: #!/bin/sh echo "Stopping firewall and allowing everyone..." iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -P INPUT ACCEPT iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT Выполняем, готово! |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|