В данной статье мы настроим раздачу интернета с компьютера под управлением 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 — интерфейс eth0 находится в диапазоне адресов inet со статическим ip;
address 192.168.100.222 — указывает что IP адрес (address) нашей сетевой карты 192.168.100.222;
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
Сейчас необходимо включить форвардинг:
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
Если после проверки вы удовлетворены результатом, то необходимо сохранить настройки используя команду:
sudo sh -c "iptables-save > /etc/iptables.up.rules"
Затем необходимо в файл /etc/network/interfaces (команда — sudo nano /etc/network/interfaces) добавить строчку:
pre-up iptables-restore < /etc/iptables.up.rules
То есть оно станет примерно такого вида:
auto eth0 iface eth0 inet manual pre-up iptables-restore < /etc/iptables.up.rules