Автоматическое подключение клиента OpenVPN на Ubuntu

В данной статье мы настроим раздачу интернета с компьютера под управлением Ubuntu. На самом компьютере будет автоматически подключаться VPN.

Сперва настроим статический IP адрес на сетевом интерфейсе для этого выполняем команду:

sudo nano /etc/network/interfaces

И вводим следующие настройки:

iface eth0 inet static 
address 192.168.100.222 
netmask 255.255.255.0 
gateway 192.168.100.1
dns-nameservers 8.8.8.8 8.8.4.4
auto eth0

Где:
iface eth0 inet static — указывает, что интерфейс (iface eth0) находится в диапазоне адресов IPv4 (inet) со статическим ip (static);
address 192.168.100.222 — указывает что IP адрес (address) нашей сетевой карты 192.168.100.222;
netmask 255.255.255.0 — указывает что наша маска подсети (netmask) имеет значение 255.255.255.0;
gateway 192.168.100.1 — адрес шлюза (gateway) по умолчанию 192.168.100.1;
dns-nameservers 8.8.8.8 8.8.4.4 — адреса DNS серверов (о ниж мы расскажем позже)
auto eth0 — указывет системе что интерфейс eth0 необходимо включать автоматически при загрузке системы с вышеуказанными параметрами.

Устанавливаем клиент OpenVPN:

sudo apt-get install openvpn

Загружаем на компьютер файл с настройками клиента. Например с вебсервера:

wget http://сайт/client.ovpn

Перемещаем скаченный файл client.ovpn в папку /etc/openvpn

sudo cp client.ovpn /etc/openvpn/

И вводим команду:

cd /etc/openvpn && sudo mv client.ovpn client.conf && sudo reboot

Теперь настроим шлюз (общий доступ к интернету):

sudo iptables -A FORWARD -i eth0 -o eth1 -s 192.168.100.0/24 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A POSTROUTING -t nat -j MASQUERADE

Теперь для конфигурации gateway’я для роутинга между двумя интерфейсами необходимо включить IP-форвардинг командой:

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

Отредактируем файл sysctl.conf. Добавьте в него вот эти две строки для активации роутинга (sudo nano /etc/sysctl.conf):

net.ipv4.conf.default.forwarding=1
net.ipv4.conf.all.forwarding=1

Если все внесенные вами изменения работают корректно и вы желаете внести эти настройки в автозагрузку (а именно, вышеприведенные настройки iptables теряют активность после перезагрузки системы), то сохраните нынешнюю рабочую конфигурацию iptables в файл командой:

sudo sh -c "iptables-save > /etc/iptables.up.rules"

После этого в сам файл сетевых настроек /etc/network/interfaces (sudo nano /etc/network/interfaces) к параметрам вашего сетевого интерфейса, например, из которого к вам поступает интернет (в нашем случае – это eth0) добавьте строку:

pre-up iptables-restore < /etc/iptables.up.rules

То есть оно станет примерно такого вида:

auto eth0
iface eth0 inet manual
pre-up iptables-restore < /etc/iptables.up.rules

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *