Показаны различия между двумя версиями страницы.
Следующая версия | Предыдущая версия | ||
linux:openvpn:2office [2012/02/21 12:07] linko22@gmail.com создано |
linux:openvpn:2office [2012/02/21 12:19] (текущий) linko22@gmail.com |
||
---|---|---|---|
Строка 12: | Строка 12: | ||
- | ====== Устанавливаем сервер (serv1) | + | ===== Устанавливаем сервер (serv1) ===== |
После нетривиальной установки, | После нетривиальной установки, | ||
- | | + | < |
+ | # cat / | ||
+ | auto lo | ||
+ | iface lo inet loopback | ||
- | auto lo | + | auto eth0 |
- | iface lo inet loopback | + | iface eth0 inet static |
- | + | address 10.0.0.10 | |
- | | + | netmask 255.255.255.0 |
- | iface eth0 inet static | + | |
- | address 10.0.0.10 | + | |
- | | + | |
- | + | ||
- | auto eth1 | + | |
- | iface eth1 inet static | + | |
- | address 192.168.120.20 | + | |
- | | + | |
+ | auto eth1 | ||
+ | iface eth1 inet static | ||
+ | address 192.168.120.20 | ||
+ | netmask 255.255.255.0 | ||
+ | </ | ||
Делаем из него роутер путем добавления в / | Делаем из него роутер путем добавления в / | ||
- | | + | < |
Настраиваем путь к репозиторям из которых будем устанавливать ПО: | Настраиваем путь к репозиторям из которых будем устанавливать ПО: | ||
- | | + | < |
+ | # cat / | ||
- | | + | deb http:// |
- | deb-src http:// | + | deb-src http:// |
- | | + | deb http:// |
- | deb-src http:// | + | deb-src http:// |
- | + | ||
- | deb http:// | + | |
- | deb-src http:// | + | |
+ | deb http:// | ||
+ | deb-src http:// | ||
+ | </ | ||
Дальше устанавливаем дополнительное ПО, предварительно обновившись: | Дальше устанавливаем дополнительное ПО, предварительно обновившись: | ||
- | | + | < |
- | # aptitude upgrade | + | # aptitude update |
- | # aptitude install console-cyrillic mc traceroute openvpn vsftpd | + | # aptitude upgrade |
+ | # aptitude install console-cyrillic mc traceroute openvpn vsftpd | ||
+ | </ | ||
+ | Для работы OpenVPN необходимо создать сретификаты и конфигурационный файл openvpn.conf. | ||
- | Для | + | Для |
- | файл openvpn.conf. | + | |
- | Для генерирования сертификатов переходим в каталог | + | < |
- | # cd / | ||
- | |||
- | |||
- | Заполняем шаблонный файл с пременными vars. Я заполнил только последнюю | ||
- | часть с данными о фирме, городе и т.п., плюс изменил директорию с | ||
- | ключами: | ||
- | |||
- | export KEY_DIR="/ | ||
+ | Заполняем шаблонный файл с пременными vars. Я заполнил только последнюю часть с данными о фирме, городе и т.п. | ||
Генерируем сертификаты: | Генерируем сертификаты: | ||
- | | + | < |
- | # ./pkitool -initca | + | # ./ |
- | # ./pkitool -server server | + | # ./ |
- | # ./pkitool client | + | # ./ |
+ | # ./pkitool client | ||
+ | </ | ||
+ | Созданные сертификаты должны появиться в вышеуказанной папке, если конечно вы ее предварительно создали. | ||
- | Созданные сертификаты должны появиться в вышеуказанной папке, если | + | Дальше пишем конфиг сервера. Читал разные статьи на эту тему, наступал на грабли, |
- | конечно вы ее предварительно создали. | + | |
- | Дальше пишем конфиг сервера. Читал разные статьи на эту тему, наступал | + | < |
- | на грабли, | + | #cat /etc/openvpn/openvpn.conf |
- | которые лежат в папке | + | |
- | /usr/share/doc/openvpn/ | + | |
- | такой конфиг: | + | |
- | #cat / | + | dev tun |
- | + | tls-server | |
- | | + | proto udp |
- | tls-server | + | port 3333 |
- | proto udp | + | comp-lzo |
- | port 3333 | + | persist-tun |
- | comp-lzo | + | persist-key |
- | persist-tun | + | |
- | persist-key | + | |
| | ||
- | | + | # указываем узловые точки виртуальной сети |
- | ifconfig 10.1.0.1 10.1.0.2 | + | ifconfig 10.1.0.1 10.1.0.2 |
- | # добавляем маршрут к локальной сети филиала | + | # добавляем маршрут к локальной сети филиала |
- | route 192.168.110.0 255.255.255.0 | + | route 192.168.110.0 255.255.255.0 |
- | + | ||
- | dh / | + | |
- | ca / | + | |
- | cert / | + | |
- | key / | + | |
- | log /var/log/openvpn.log | + | dh /etc/openvpn/ |
- | verb 3 | + | ca /etc/openvpn/2.0/ |
+ | cert / | ||
+ | key / | ||
+ | log / | ||
+ | verb 3 | ||
+ | </ | ||
Все готово, | Все готово, | ||
- | | + | < |
- | # ps -ely | grep openvpn | + | # / |
+ | # ps -ely | grep openvpn | ||
+ | </ | ||
+ | Для полного счастья добавляем правила в iptables (приведенный ниже вариант может отличаться, | ||
+ | < | ||
+ | iptables -A INPUT -p udp -dport 3333 -j ACCEPT | ||
+ | iptables -A INPUT -i tun0 -j ACCEPT | ||
+ | iptables -A FORWARD -i tun0 -j ACCEPT | ||
+ | iptables -A FORWARD -o tun0 -j ACCEPT | ||
+ | </ | ||
- | Для полного | + | ===== Установка клиента |
- | вариант может отличаться, в зависимости от вашей конфигурации): | + | |
- | iptables -A INPUT -p udp -dport 3333 -j ACCEPT | + | В плане установки и настройки системы проделываем то же самое, что и с предыдущем сервером. |
- | iptables -A INPUT -i tun0 -j ACCEPT | + | |
- | iptables -A FORWARD -i tun0 -j ACCEPT | + | |
- | iptables -A FORWARD -o tun0 -j ACCEPT | + | |
+ | < | ||
+ | # cat / | ||
- | Установка клиента (serv2) | + | auto lo |
+ | iface lo inet loopback | ||
- | В плане установки и настройки системы проделываем то же самое, что и с | + | auto eth0 |
- | предыдущем сервером. | + | iface eth0 inet static |
+ | address 10.0.0.20 | ||
+ | netmask 255.255.255.0 | ||
- | # cat /etc/ | + | auto eth1 |
+ | iface eth1 inet static | ||
+ | address 192.168.110.10 | ||
+ | netmask 255.255.255.0 | ||
+ | </code> | ||
- | auto lo | + | Сертификаты нужно скопировать с центрального сервера. Я для этих целей поднимал там ftp. |
- | iface lo inet loopback | + | < |
+ | dev tun | ||
+ | tls-client | ||
+ | remote 10.0.0.10 | ||
+ | proto udp | ||
+ | port 3333 | ||
+ | comp-lzo | ||
+ | persist-tun | ||
+ | persist-key | ||
- | auto eth0 | + | # указываем узловые точки виртуальной сети |
- | iface eth0 inet static | + | ifconfig |
- | address | + | # добавляем маршрут к локальной сети офиса |
- | | + | route 192.168.120.0 |
- | auto eth1 | + | dh / |
- | iface eth1 inet static | + | ca / |
- | address 192.168.110.10 | + | cert / |
- | | + | key / |
+ | log / | ||
+ | verb 3 | ||
+ | </ | ||
- | Сертификаты нужно | + | Запускаем: |
- | поднимал там ftp. | + | |
- | dev tun | + | < |
- | tls-client | + | |
- | remote 10.0.0.10 | + | |
- | proto udp | + | |
- | port 3333 | + | |
- | comp-lzo | + | |
- | persist-tun | + | |
- | persist-key | + | |
- | # указываем узловые точки виртуальной сети | + | Правим фаервол: |
- | ifconfig 10.1.0.2 10.1.0.1 | + | |
- | # добавляем маршрут к локальной сети офиса | + | |
- | route 192.168.120.0 255.255.255.0 | + | |
- | dh / | + | < |
- | ca / | + | iptables -A INPUT -i tun0 -j ACCEPT |
- | cert / | + | iptables -A FORWARD -i tun0 -j ACCEPT |
- | key / | + | iptables -A FORWARD -o tun0 -j ACCEPT |
+ | </code> | ||
- | log / | + | Пингуем |
- | verb 3 | + | |
- | + | ||
- | + | ||
- | Запускаем: | + | |
- | + | ||
- | # / | + | |
- | + | ||
- | + | ||
- | Правим | + | |
- | iptables -A INPUT -i tun0 -j ACCEPT | + | Итоговые впечатления: |
- | iptables -A FORWARD -i tun0 -j ACCEPT | + | |
- | iptables -A FORWARD -o tun0 -j ACCEPT | + | |
+ | ===== Источник ===== | ||
- | Пингуем хосты противоположных сетей по их внутренним | + | [[http:// |
- | серверов и с клиентских машин каждой локальной сети. | + | |
- | Итоговые впечатления: | ||
- | может быть достойной заменой Debian. |