В прошлой публикации мы обещали поделиться опытом по настройке VPN сервера на классической “юзерской” Linux платформе Ubuntu. А обещания, как известно, следует выполнять.
Дистрибутив для установки Ubuntu на машину можно скачать на официальном torrent:
1 |
http://torrent.ubuntu.com:6969/ |
Если Вы во время установки не поставили SSH, самое время этим заняться. Вводим следующую конфигурацию:
1 |
sudo apt-get install openssh-server |
Теперь можем подключаться через PuTTY или через SSH с другой Linux машиной.
Настройка конфигурации VPN сервера
Нам понадобится 2 пакета:
- канальный протокол PPP;
- туннельный протокол точка-точка PPTPD.
Устанавливаем их, прописывая в консоли следующее:
1 |
apt-get install ppp pptpd |
После установки проверяем корректность работы системы. Для этого уточняем наличие прослушки на порту 1723:
1 |
netstat -ap | grep pptp |
В результате должно получиться вот так:
1 |
1723 LISTENED |
После удачной установки приступаем к конфигурации системы. Для начала следует прописать статический IP нашему серверу. Для этого переходим в файл конфигурации:
1 |
nano /etc/network/interfaces |
Там видим следующее:
1 |
auto eth0 |
Ниже добавляем конфигурацию:
1 2 3 4 5 6 |
iface eth0 inet static address 192.168.1.2 #ip adress netmask 255.255.255.0 # mask network 192.168.1.1 #gatwey broadcast 192.168.1.255 #last adress for network gateway 192.168.1.1 # mojno ne pisat: |
После этого прописываем DNS. Для этого заходим в файл конфигурации:
1 |
nano /etc/resolv.conf |
В нем добавляем строку следующего вида:
1 |
nameserver IP-address dns server |
Далее перезапускаем сетевой сервис командой:
1 |
/etc/init.d/networking restart |
Настройка Firewall
В Ubuntu мы сталкиваемся с проблемами при работе с iptables. Но безвыходных ситуаций не бывает. Поэтому, чтобы построить NAT и разрешить GRE поток, заходим в файл конфигурации:
1 |
nano /etc/rc.local |
Перед аuto 0 вводим следующее:
1 2 3 4 |
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A INPUT -p gre -j ACCEPT iptables -A INPUT -m tcp -p tcp --dport 1723 -j ACCEPT echo "1" > /proc/sys/net/ipv4/ip_forward |
В дополнение добавим еще одну конфигурацию – автофорвардинг пакетов:
1 |
nano /etc/sysctl.conf раскоментить net.ipv4.ip_forward = 1 |
Поздравляем! С общей конфигурацией сервера закончили. Теперь приступим ко второму этапу – конфигурации VPN.
Конфигурация хранится в 3 файлах. Для удобства приводим сразу готовый вариант настроенной конфигурации. Можете смело копировать, предварительно вставив свои IP:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
nano /etc/pptpd.conf speed 115200 option /etc/ppp/pptpd-options localip 192.168.1.2 remoteip 172.22.1.1-5 pidfile /var/run/pptpd.pid /etc/ppp/pptpd-options logfile /var/log/pptpd.log lock mtu 1490 mru 1490 ipcp-accept-local ipcp-accept-remote lcp-echo-failure 3 lcp-echo-interval 5 auth require-mschap-v2 +mppe-128 ms-dns 192.168.1.5 ms-dns 192.168.1.6 |
Последний этап – настройка VPN аккаунтов.
Идем в файл конфигурации:
1 |
/etc/ppp/chap-secrets |
Прописываем аккаунты по шаблону, который приведен в конфигурации.
Настройка сервера успешно завершена!