Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
wiki:руководство_по_ubuntu_server:частные_сети:openvpn [2012/10/28 19:09] [Настройка простого клиента] |
wiki:руководство_по_ubuntu_server:частные_сети:openvpn [2014/04/11 14:47] (текущий) [Установка сервера] |
||
---|---|---|---|
Строка 13: | Строка 13: | ||
Для установки **openvpn** наберите в терминале: | Для установки **openvpn** наберите в терминале: | ||
- | <code>sudo apt-get install openvpn</code> | + | <code>sudo apt-get install openssl openvpn</code> |
====Установка структуры открытых ключей (PKI)==== | ====Установка структуры открытых ключей (PKI)==== | ||
Строка 166: | Строка 166: | ||
</code> | </code> | ||
- | Сервер **OpenVPN** всегда использует первый доступный адрес в сети клиента и только этот IP адрес будет откликаться на ping. Например, если вы настроили маску /24 клиентской сети, то будет использован адрес, оканчивающийся на .1. Адрес P-t-P, который вы видите в выводе ifconfig выше обычно не отвечает на запросы ping. | + | <note>Сервер **OpenVPN** всегда использует первый доступный адрес в сети клиента и только этот IP адрес будет откликаться на ping. Например, если вы настроили маску /24 клиентской сети, то будет использован адрес, оканчивающийся на .1. Адрес P-t-P, который вы видите в выводе ifconfig выше обычно не отвечает на запросы ping.</note> |
Проверьте вашу маршрутизацию: | Проверьте вашу маршрутизацию: | ||
Строка 179: | Строка 179: | ||
</code> | </code> | ||
- | ====Решение первичных проблем==== | + | ====Первичное решение проблем==== |
- | If the above didn't work for you, check this: | + | Если что-то из того, что рассмотрено выше, у вас не работает, проверьте следующее: |
- | Check your syslog, e.g. grep -i vpn /var/log/syslog | + | -- Проверьте ваш syslog, например, так: |
- | + | .. <code>grep -i vpn /var/log/syslog</code> | |
- | Can the client connect to the server machine? Maybe a firewall is blocking access? Check syslog on server. | + | -- Может ли клиент соединиться с сервером? Возможно доступ блокирует firewall? Проверьте syslog на сервере. |
- | + | -- Клиент и сервер должны использовать одни и те же протокол и порт, например, UDP порт 1194. Смотрите опции настройки **port** и **proto**. | |
- | Client and server must use same protocol and port, e.g. UDP port 1194, see port and proto config option | + | -- Клиент и сервер должны использовать одно и то же сжатие. Смотрите опцию настройки **comp-lzo**. |
- | + | -- Клиент и сервер должны использовать один и тот же режим: маршрутизации (routed) или моста (bridged). Смотрите опцию настройки **server** или **server-bridge**. | |
- | Client and server must use same config regarding compression, see comp-lzo config option | + | |
- | + | ||
- | Client and server must use same config regarding bridged vs routed mode, see server vs server-bridge config option | + | |
====Расширенные настройки==== | ====Расширенные настройки==== | ||
- | ===Расширенная конфигурация перенаправленного VPN на сервере=== | + | ===Расширенная настройка VPN на сервере в режиме маршрутизации=== |
- | The above is a very simple working VPN. The client can access services on the VPN server machine through an encrypted tunnel. If you want to reach more servers or anything in other networks, push some routes to the clients. E.g. if your company's network can be summarized to the network 192.168.0.0/16, you could push this route to the clients. But you will also have to change the routing for the way back - your servers need to know a route to the VPN client-network. | + | Выше рассмотрена очень простая работающая VPN. Клиент имеет доступ к сервисам на машине VPN сервера через зашифрованный канал. Если вы хотите получить доступ к большему количеству серверов или к чему-то в других сетях, добавьте несколько маршрутов на клиенте. Например, если сеть вашей компании в целом может быть описана как 192.168.0.0/16, вы можете добавить этот маршрут на клиенте. Но вам придется также изменить маршрут для обратного направления - ваши сервера должны знать как проложить маршрут до сети VPN клиента. |
- | Or you might push a default gateway to all the clients to send all their internet traffic to the VPN gateway first and from there via the company firewall into the internet. This section shows you some possible options. | + | Или вы можете указать шлюз по умолчанию для всех клиентов чтобы посылать весь их трафик сначала на VPN сервер, а от него через защитный сервер (firewall) компании в интернет. В этом разделе вы увидите некоторые возможные варианты настроек. |
- | Push routes to the client to allow it to reach other private subnets behind the server. Remember that these private subnets will also need to know to route the OpenVPN client address pool (10.8.0.0/24) back to the OpenVPN server. | + | Передать маршрут клиенту чтобы разрешить ему доступ к другим частным подсетям за сервером. Помните, что эти частные сети также должны знать как построить маршрут до диапазона адресов клиента OpenVPN, находящегося за OpenVPN сервером: |
+ | <code>push "route 10.0.0.0 255.0.0.0"</code> | ||
- | push "route 10.0.0.0 255.0.0.0" | + | Если указана, то такая директива настроит всех клиентов на перенаправление их сетевых шлюзов по умолчанию через VPN, что заставит весь трафик, такой как просмотр страниц интернет-сайтов или DNS запросы, проходить через VPN (машине OpenVPN сервера или вашему центральному firewall может потребоваться маскировать с помощью NAT интерфейсы TUN/TAP в сторону интернета, чтобы они работали правильно): |
+ | <code>push "redirect-gateway def1 bypass-dhcp"</code> | ||
- | If enabled, this directive will configure all clients to redirect their default network gateway through the VPN, causing all IP traffic such as web browsing and and DNS lookups to go through the VPN (the OpenVPN server machine or your central firewall may need to NAT the TUN/TAP interface to the internet in order for this to work properly). | + | Настройка режима сервера и предоставление VPN подсети для OpenVPN откуда брать клиентские адреса. Сервер заберет себе адрес 10.8.0.1, а остальные могут использоваться для предоставления клиентам. Каждый клиент будет иметь возможность подключиться к серверу по адресу 10.8.0.1. Поставьте комментарий на этой строке, если используете режим сетевого моста: |
+ | <code>server 10.8.0.0 255.255.255.0</code> | ||
- | push "redirect-gateway def1 bypass-dhcp" | + | Сохранять записи соответствий клиента с их виртуальными IP адресами в указанном файле. Если OpenVPN выключается или перегружается, повторно подключившиеся клиенты получат те же виртуальные IP адреса, что и в прошлый раз: |
- | + | <code>ifconfig-pool-persist ipp.txt</code> | |
- | Configure server mode and supply a VPN subnet for OpenVPN to draw client addresses from. The server will take 10.8.0.1 for itself, the rest will be made available to clients. Each client will be able to reach the server on 10.8.0.1. Comment this line out if you are ethernet bridging. | + | |
- | + | ||
- | server 10.8.0.0 255.255.255.0 | + | |
- | + | ||
- | Maintain a record of client to virtual IP address associations in this file. If OpenVPN goes down or is restarted, reconnecting clients can be assigned the same virtual IP address from the pool that was previously assigned. | + | |
- | + | ||
- | ifconfig-pool-persist ipp.txt | + | |
- | + | ||
- | Push DNS servers to the client. | + | |
+ | Передать настройки на DNS сервера клиенту: | ||
+ | <code> | ||
push "dhcp-option DNS 10.0.0.2" | push "dhcp-option DNS 10.0.0.2" | ||
push "dhcp-option DNS 10.1.0.2" | push "dhcp-option DNS 10.1.0.2" | ||
+ | </code> | ||
- | Allow client to client communication. | + | Разрешить соединения между клиентами: |
+ | <code>client-to-client</code> | ||
- | client-to-client | + | Разрешить сжатие на VPN соединении: |
+ | <code>comp-lzo</code> | ||
- | Enable compression on the VPN link. | + | Директива **keepalive** обеспечивает отправку сообщений типа ping вперед и назад через соединение для того, чтобы каждая сторона знала, когда другая сторона становится недоступна. Проверка раз в секунду и решение, что удаленная точка не отвечает, если ответ не принят в течение 3 секунд: |
- | + | <code>keepalive 1 3</code> | |
- | comp-lzo | + | |
- | + | ||
- | The keepalive directive causes ping-like messages to be sent back and forth over the link so that each side knows when the other side has gone down. Ping every 1 second, assume that remote peer is down if no ping received during a 3 second time period. | + | |
- | + | ||
- | keepalive 1 3 | + | |
- | + | ||
- | It's a good idea to reduce the OpenVPN daemon's privileges after initialization. | + | |
+ | Хорошей идеей является снижение привилегий для сервиса OpenVPN после установки: | ||
+ | <code> | ||
user nobody | user nobody | ||
group nogroup | group nogroup | ||
+ | </code> | ||
- | OpenVPN 2.0 includes a feature that allows the OpenVPN server to securely obtain a username and password from a connecting client, and to use that information as a basis for authenticating the client. To use this authentication method, first add the auth-user-pass directive to the client configuration. It will direct the OpenVPN client to query the user for a username/password, passing it on to the server over the secure TLS channel. | + | OpenVPN 2.0 включает возможность для сервера OpenVPN безопасно получать имя пользователя и пароль от подключающегося клиента и использовать эту информацию как основу аутентификации клиента. Для использования этого метода аутентификации сперва добавьте директиву **auth-user-pass** в настройку клиента. Это укажет клиенту OpenVPN запрашивать у пользователя имя и пароль и передавать их на сервер через безопасный канал TLS. |
+ | <code> | ||
# client config! | # client config! | ||
auth-user-pass | auth-user-pass | ||
+ | </code> | ||
- | This will tell the OpenVPN server to validate the username/password entered by clients using the login PAM module. Useful if you have centralized authentication with e.g. Kerberos. | + | Это скажет серверу OpenVPN проверять имя и пароль, введенные клиентом, с помощью модуля PAM. Это применимо если у вас централизованная аутентификация, например, с помощью Kerberos. |
+ | <code>plugin /usr/lib/openvpn/openvpn-auth-pam.so login</code> | ||
- | plugin /usr/lib/openvpn/openvpn-auth-pam.so login | + | <note>Пожалуйста, прочтите [[http://openvpn.net/index.php/open-source/documentation/howto.html#security|руководство по укреплению безопасности]] OpenVPN для дальнейших консультаций по безопасности.</note> |
- | Please read the OpenVPN hardening security guide for further security advice. | + | ===Расширенная настройка VPN на сервере в режиме сетевого моста=== |
- | ===Расширенная настройка VPN с мостом на сервере=== | + | **OpenVPN** может быть настроен в двух режимах VPN: маршрутизации (routed) и сетевого моста (bridged). Иногда их относят к VPN уровню-2 (канальный) и уровню-3 (пакетный) сетевой модели OSI. В режиме сетевого моста все VPN кадры (frames) 2-го уровня, такие как кадры ethernet, посылаются VPN партнеру, в то время как в режиме маршрутизации посылаются только пакеты уровня-3. В режиме моста весь трафик, включая традиционно локальный трафик, такой как сетевые широковещательные пакеты, DHCP запросы, ARP запросы и т.д., посылается VPN партнеру, в то время как в режиме маршрутизации он будет отфильтрован. |
- | + | ||
- | OpenVPN can be setup for either a routed or a bridged VPN mode. Sometimes this is also referred to as OSI layer-2 versus layer-3 VPN. In a bridged VPN all layer-2 frames - e.g. all ethernet frames - are sent to the VPN partners and in a routed VPN only layer-3 packets are sent to VPN partners. In bridged mode all traffic including traffic which was traditionally LAN-local like local network broadcasts, DHCP requests, ARP requests etc. are sent to VPN partners whereas in routed mode this would be filtered. | + | |
==Подготовка настроек интерфейса для сетевого моста на сервере== | ==Подготовка настроек интерфейса для сетевого моста на сервере== | ||
- | Make sure you have the bridge-utils package installed: | + | Убедитесь, что у вас установлен пакет **bridge-utils**: |
- | + | <code>sudo apt-get install bridge-utils</code> | |
- | sudo apt-get install bridge-utils | + | |
- | + | ||
- | Before you setup OpenVPN in bridged mode you need to change your interface configuration. Let's assume your server has an interface eth0 connected to the internet and an interface eth1 connected to the LAN you want to bridge. Your /etc/network/interfaces would like this: | + | |
+ | Перед настройкой **OpenVPN** в режиме сетевого моста вам потребуется изменить настройки вашего интерфейса. Давайте предположим, что ваш сервер подключен через eth0 к интернету, а интерфейс eth1 соединен с вашей локальной сетью для которой вы хотите установить сетевой мост. Ваш файл /etc/network/interfaces должен выглядеть как-то так: | ||
+ | <code> | ||
auto eth0 | auto eth0 | ||
iface eth0 inet static | iface eth0 inet static | ||
Строка 272: | Строка 263: | ||
address 10.0.0.4 | address 10.0.0.4 | ||
netmask 255.255.255.0 | netmask 255.255.255.0 | ||
+ | </code> | ||
- | This straight forward interface config needs to be changed into a bridged mode like where the config of interface eth1 moves to the new br0 interface. Plus we configure that br0 should bridge interface eth1. We also need to make sure that interface eth1 is always in promiscuous mode - this tells the interface to forward all ethernet frames to the IP stack. | + | Такая настройка прямого перенаправления интерфейсов должна быть исправлена для режима моста, где настройка интерфейса eth1 перемещается на новый интерфейс br0. Плюс мы укажем, что br0 будет интерфейсом моста для eth1. Нам также стоит убедиться, что интерфейс eth1 всегда находится в смешанном (promiscuous) режиме - это скажет интерфейсу пересылать все ethernet пакеты в стек IP. |
+ | <code> | ||
auto eth0 | auto eth0 | ||
iface eth0 inet static | iface eth0 inet static | ||
Строка 290: | Строка 282: | ||
netmask 255.255.255.0 | netmask 255.255.255.0 | ||
bridge_ports eth1 | bridge_ports eth1 | ||
+ | </code> | ||
- | At this point you need to restart networking. Be prepared that this might not work as expected and that you will lose remote connectivity. Make sure you can solve problems having local access. | + | На этом этапе вам потребуется перезагрузка сети. Будьте готовы, что это не сработает так, как задумывалось, и вы потеряете удаленный доступ. Убедитесь, что сможете решить проблемы, используя локальный доступ. |
- | + | <code>sudo /etc/init.d/network restart</code> | |
- | sudo /etc/init.d/network restart | + | |
==Подготовка настроек сервера для сетевого моста== | ==Подготовка настроек сервера для сетевого моста== | ||
- | Edit /etc/openvpn/server.conf changing the following options to: | + | Отредактируйте /etc/openvpn/server.conf, изменив следующие настройки: |
+ | <code> | ||
;dev tun | ;dev tun | ||
dev tap | dev tap | ||
Строка 304: | Строка 296: | ||
;server 10.8.0.0 255.255.255.0 | ;server 10.8.0.0 255.255.255.0 | ||
server-bridge 10.0.0.4 255.255.255.0 10.0.0.128 10.0.0.254 | server-bridge 10.0.0.4 255.255.255.0 10.0.0.128 10.0.0.254 | ||
+ | </code> | ||
- | Next, create a helper script to add the tap interface to the bridge and to ensure that eth1 is promiscuous mode. Create /etc/openvpn/up.sh: | + | Далее создайте вспомогательный сценарий для добавления **tap** интерфейса для моста и для проверки, что **eth1** находится в смешанном режиме. Создайте /etc/openvpn/up.sh: |
+ | <code> | ||
#!/bin/sh | #!/bin/sh | ||
Строка 316: | Строка 309: | ||
/sbin/ip link set "$ETHDEV" promisc on | /sbin/ip link set "$ETHDEV" promisc on | ||
/sbin/brctl addif $BR $TAPDEV | /sbin/brctl addif $BR $TAPDEV | ||
+ | </code> | ||
- | Then make it executable: | + | Сделайте файл исполняемым: |
+ | <code>sudo chmod 755 /etc/openvpn/up.sh</code> | ||
- | sudo chmod 755 /etc/openvpn/up.sh | + | После настройки сервера перезапустите **openvpn**, введя: |
- | + | <code>sudo /etc/init.d/openvpn restart</code> | |
- | After configuring the server, restart openvpn by entering: | + | |
- | + | ||
- | sudo /etc/init.d/openvpn restart | + | |
==Настройка клиента== | ==Настройка клиента== | ||
- | First, install openvpn on the client: | + | Сначала установите **openvpn** на клиенте: |
+ | <code>sudo apt-get install openvpn</code> | ||
- | sudo apt-get install openvpn | + | Затем с настроенным сервером и скопированными сертификатами клиентов в каталог /etc/openvpn/, создайте файл конфигурации клиента, скопировав пример. В терминале на клиентской машине введите: |
- | + | <code>sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn</code> | |
- | Then with the server configured and the client certificates copied to the /etc/openvpn/ directory, create a client configuration file by copying the example. In a terminal on the client machine enter: | + | |
- | + | ||
- | sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn | + | |
- | + | ||
- | Now edit /etc/openvpn/client.conf changing the following options: | + | |
+ | Теперь отредактируйте /etc/openvpn/client.conf, изменив следующие опции: | ||
+ | <code> | ||
dev tap | dev tap | ||
;dev tun | ;dev tun | ||
+ | </code> | ||
- | Finally, restart openvpn: | + | Наконец перезапустите **openvpn**: |
+ | <code>sudo /etc/init.d/openvpn restart</code> | ||
- | sudo /etc/init.d/openvpn restart | + | Теперь у вас есть возможность соединиться с удаленной сетью через VPN. |
- | + | ||
- | You should now be able to connect to the remote LAN through the VPN. | + | |
====Реализации клиентского программного обеспечения==== | ====Реализации клиентского программного обеспечения==== | ||
Строка 350: | Строка 340: | ||
===Графический интерфейс сетевого менеджера Linux для OpenVPN=== | ===Графический интерфейс сетевого менеджера Linux для OpenVPN=== | ||
- | Many Linux distributions including Ubuntu desktop variants come with Network Manager, a nice GUI to configure your network settings. It also can manage your VPN connections. Make sure you have package network-manager-openvpn installed. Here you see that the installation installs all other required packages as well: | + | Множество дистрибутивов Linux, включая варианты Ubuntu desktop, поставляются с программой **Network Manager**, прекрасным графическим интерфейсом для настройки вашей сети. Он также позволяет управлять вашими VPN соединениями. Убедитесь, что пакет **network-manager-openvpn** установлен. Здесь вы можете также увидеть установку всех остальных необходимых пакетов: |
+ | <code> | ||
root@client:~# apt-get install network-manager-openvpn | root@client:~# apt-get install network-manager-openvpn | ||
Reading package lists... Done | Reading package lists... Done | ||
Строка 367: | Строка 357: | ||
After this operation, 3,031 kB of additional disk space will be used. | After this operation, 3,031 kB of additional disk space will be used. | ||
Do you want to continue [Y/n]? | Do you want to continue [Y/n]? | ||
+ | </code> | ||
- | To inform network-manager about the new installed packages you will have to restart it: | + | Для информирования **network-manager** о новых установленных пакетах вам придется его перезагрузить: |
+ | <code> | ||
root@client:~# restart network-manager | root@client:~# restart network-manager | ||
network-manager start/running, process 3078 | network-manager start/running, process 3078 | ||
+ | </code> | ||
- | Open the Network Manager GUI, select the VPN tab and then the 'Add' button. Select OpenVPN as the VPN type in the opening requester and press 'Create'. In the next window add the OpenVPN's server name as the 'Gateway', set 'Type' to 'Certificates (TLS)', point 'User Certificate' to your user certificate, 'CA Certificate' to your CA certificate and 'Private Key' to your private key file. Use the advanced button to enable compression or other special settings you set on the server. Now try to establish your VPN. | + | Откройте интерфейс **Network Manager**, выберите закладку **VPN** и затем нажмите кнопку %%'Add'%% (Добавить). Выберите **OpenVPN** в качестве типа VPN в открывшемся запросе и нажмите %%'Create'%% (Создать). В следующем окне добавьте имя сервера OpenVPN в качестве шлюза, установите тип в %%'Certificates (TLS)'%%, укажите в %%'User Certificate'%% ваш пользовательский сертификат, в %%'CA Certificate'%% сертификат вашего Центра Сертификатов и в %%'Private Key'%% файл вашего секретного ключа. Используйте кнопку %%'Дополнительно'%% для разрешения сжатия и других специальных настроек, которые вы устанавливали на сервере. Теперь попробуйте установить ваш VPN. |
===OpenVPN с графическим интерфейсом под Mac OS X: Tunnelblick=== | ===OpenVPN с графическим интерфейсом под Mac OS X: Tunnelblick=== | ||
- | Tunnelblick is an excellent free, open source implementation of a GUI for OpenVPN for OS X. The project's homepage is at http://code.google.com/p/tunnelblick/. Download the latest OS X installer from there and install it. Then put your client.ovpn config file together with the certificates and keys in /Users/username/Library/Application Support/Tunnelblick/Configurations/ and lauch Tunnelblick from your Application folder. | + | **Tunnelblick** является великолепной свободной реализацией графического интерфейса для **OpenVPN** с открытым кодом под **OS X**. Домашняя страница проекта находится по адресу [[http://code.google.com/p/tunnelblick/]]. Загрузите оттуда последний **OS X** установщик и запустите его. Далее положите ваш файл настроек **client.ovpn** вместе с сертификатами и секретным ключом в **//%%/Users/username/Library/Application Support/Tunnelblick/Configurations/%%//** и загрузите **Tunnelblick** из каталога приложений. |
+ | <code> | ||
# sample client.ovpn for Tunnelblick | # sample client.ovpn for Tunnelblick | ||
client | client | ||
Строка 396: | Строка 388: | ||
cert client.crt | cert client.crt | ||
key client.key | key client.key | ||
+ | </code> | ||
===OpenVPN с графическим интерфейсом под Windows 7=== | ===OpenVPN с графическим интерфейсом под Windows 7=== | ||
- | First download and install the latest OpenVPN Windows Installer. OpenVPN 2.2.1 was the latest when this was written. Additionally download an alternative Open VPN Windows GUI. The OpenVPN MI GUI from http://openvpn-mi-gui.inside-security.de seems to be a nice one for Windows 7. Download the latest version. 20110624 was the latest version when this was written. | + | Для начала загрузите и установите последний [[http://www.openvpn.net/index.php/open-source/downloads.html|OpenVPN Windows Installer]]. На момент написания последней версией был OpenVPN 2.2.2. Дополнительно загрузите альтернативный графический интерфейс Open VPN Windows GUI. [[http://openvpn-mi-gui.inside-security.de|OpenVPN MI GUI]] представляется более удачным интерфейсом для Windows 7. Загружайте последнюю версию. На момент написания это 20120316. |
- | You need to start the OpenVPN service. Goto Start > Computer > Manage > Services and Applications > Services. Find the OpenVPN service and start it. Set it's startup type to automatic. When you start the OpenVPN MI GUI the first time you need to run it as an administrator. You have to right click on it and you will see that option. | + | Вам потребуется запустить сервис **OpenVPN**. Выберите в стартовом меню **//Start > Computer > Manage > Services and Applications > Services//**. Найдите сервис **OpenVPN** и запустите его. Установите тип загрузки в **автоматический**. Когда вы загружаете **OpenVPN MI GUI** в первый раз, вам надо сделать это в режиме администратора. Для этого надо нажать правую кнопку мыши на значке программы и вы увидите такую настройку. |
- | + | ||
- | You will have to write your OpenVPN config in a textfile and place it in C:\Program Files\OpenVPN\config\client.ovpn along with the CA certificate. You could put the user certificate in the user's home directory like in the follwing example. | + | |
+ | Вам потребуется записать вашу конфигурацию **OpenVPN** в текстовый файл и поместить его в каталог **//C:\Program Files\OpenVPN\config\client.ovpn//** вместе с сертификатом центра сертификатов. Вы можете положить сертификат пользователя в домашний каталог, как указано в данном примере: | ||
+ | <code> | ||
# C:\Program Files\OpenVPN\config\client.ovpn | # C:\Program Files\OpenVPN\config\client.ovpn | ||
client | client | ||
Строка 425: | Строка 418: | ||
management-query-passwords | management-query-passwords | ||
auth-retry interact | auth-retry interact | ||
+ | </code> | ||
===OpenVPN для OpenWRT=== | ===OpenVPN для OpenWRT=== | ||
- | OpenWRT is described as a Linux distribution for embedded devices like WLAN router. There are certain types of WLAN routers who can be flashed to run OpenWRT. Depending on the available memory on your OpenWRT router you can run software like OpenVPN and you could for example build a small inexpensive branch office router with VPN connectivity to the central office. More info on OpenVPN on OpenWRT is here. And here is the OpenWRT project's homepage: http://openwrt.org | + | **OpenWRT** описывается как Linux дистрибутив для встраивания в устройства типа WLAN маршрутизаторов. Существует определенный набор маршрутизаторов, в которые может быть прописан **OpenWRT**. В зависимости от доступной памяти ваш OpenWRT маршрутизатор может запускать программы, такие как **OpenVPN** и вы можете, например, построить небольшой недорогой внешний офис с маршрутизатором, соединенным через VPN с центральным офисом. [[http://wiki.openwrt.org/doc/howto/vpn.overview|Здесь]] можно найти больше информации по OpenVPN под OpenWRT. А [[http://openwrt.org/|здесь]] находится домашняя страница проекта **OpenWRT**. |
- | + | ||
- | Log into your OpenWRT router and install OpenVPN: | + | |
+ | Подключитесь к вашему **OpenWRT** маршрутизатору и установите **OpenVPN**: | ||
+ | <code> | ||
opkg update | opkg update | ||
opkg install openvpn | opkg install openvpn | ||
+ | </code> | ||
- | Check out /etc/config/openvpn and put you client config in there. Copy certificated and keys to /etc/openvpn/ | + | Найдите **/etc/config/openvpn** и поместите в него ваши настройки клиента. Скопируйте сертификаты и ключи в /etc/openvpn/. |
+ | <code> | ||
config openvpn client1 | config openvpn client1 | ||
option enable 1 | option enable 1 | ||
Строка 447: | Строка 442: | ||
option key /etc/openvpn/client.key | option key /etc/openvpn/client.key | ||
option comp_lzo 1 | option comp_lzo 1 | ||
+ | </code> | ||
- | Restart OpenVPN: | + | Перезапустите OpenVPN: |
+ | <code>/etc/init.d/openvpn restart</code> | ||
- | /etc/init.d/openvpn restart | + | Вам нужно будет посмотреть не требуется ли изменить в маршрутизаторе маршрутизацию и правила firewall. |
- | + | ||
- | You will have to see if you need to adjust your router's routing and firewall rules. | + | |
====Ссылки==== | ====Ссылки==== | ||
- | See the OpenVPN website for additional information. | + | -- Посетите [[http://openvpn.net/|сайт OpenVPN]] для дополнительной информации. |
- | + | -- [[http://openvpn.net/index.php/open-source/documentation/howto.html#security|Руководство по укреплению безопасности OpenVPN]]. | |
- | OpenVPN hardening security guide | + | -- Также хороший источник информации: книга [[http://www.packtpub.com/openvpn/book|Building and Integrating Virtual Private Networks]] от Pakt. |
- | + | ||
- | Also, Pakt's OpenVPN: Building and Integrating Virtual Private Networks is a good resource. | + | |
---- | ---- |