Alt linux openvpn client

Alt linux openvpn client

Product SiteDocumentation Site

⁠59.2.3. Настройка VPN-подключения по протоколу OpenVPN в Network Manager

Для настройки VPN-подключения по протоколу OpenVPN в Network Manager, следует выполнить следующие действия:

Нажать левой кнопкой мыши на значок NetworkManager , в меню выбрать Соединения VPNДобавить VPN-соединение :

кнопка Добавить новое соединение

В списке выбора типа соединения выбрать пункт OpenVPN и нажать кнопку Создать :

Добавить новое соединение OpenVPN

Если имеется файл конфигурации клиента, в списке выбора типа соединения можно выбрать пункт Импортировать сохраненную конфигурацию VPN и указать этот файл, параметры соединения будут настроены согласно этому файлу.

Сгенерированные ключи и сертификаты

Нажать кнопку Дополнительно чтобы указать параметры подключения. Настройки соединения находятся на разных вкладках, например на вкладке Защита можно указать алгоритм шифрования:

Параметры подключения

Подключение к сети VPN

скопируйте ранее сгенерированные ключи и сертификаты в каталог /etc/openvpn/keys/ и укажите их в /etc/openvpn/client.conf ;

в файле /etc/openvpn/client.conf в поле remote укажите IP-адрес OpenVPN сервера, другие параметры приведите в соответствие с настройками сервера, например:

remote 192.168.0.102 1194 ca /etc/openvpn/keys/my-ca.crt cert /etc/openvpn/keys/client.crt key /etc/openvpn/keys/client.pem #remote-cert-tls server cipher grasshopper-cbc tls-cipher GOST2012-GOST8912-GOST8912
# openvpn /etc/openvpn/client.conf 

Источник

Alt linux openvpn client

Product SiteDocumentation Site

⁠71.2.3. Настройка VPN-подключения по протоколу OpenVPN в Network Manager

Для настройки VPN-подключения по протоколу OpenVPN в Network Manager, следует выполнить следующие действия:

Открыть окно настроек Управление сетью , нажав кнопку Настроить сетевые соединения в области уведомлений.

кнопка Добавить новое соединение

В списке выбора типа соединения выбрать пункт OpenVPN и нажать кнопку Создать :

Добавить новое соединение OpenVPN

Если имеется файл конфигурации клиента, в списке выбора типа соединения можно выбрать пункт Импортировать VPN соединение и указать этот файл, параметры соединения будут настроены согласно этому файлу.

Сгенерированные ключи и сертификаты

Нажать кнопку Дополнительно чтобы указать параметры подключения. Настройки соединения находятся на разных вкладках, например на вкладке Защита можно указать алгоритм шифрования:

Параметры подключения

Подключение к сети VPN

скопируйте ранее сгенерированные ключи и сертификаты в каталог /etc/openvpn/keys/ и укажите их в /etc/openvpn/client.conf ;

в файле /etc/openvpn/client.conf в поле remote укажите IP-адрес OpenVPN сервера, другие параметры приведите в соответствие с настройками сервера, например:

remote 192.168.0.102 1194 ca /etc/openvpn/keys/my-ca.crt cert /etc/openvpn/keys/client.crt key /etc/openvpn/keys/client.pem #remote-cert-tls server cipher grasshopper-cbc tls-cipher GOST2012-GOST8912-GOST8912
# openvpn /etc/openvpn/client.conf 

Источник

Читайте также:  Ricoh aficio sp c240dn linux

VPN с помощью OpenVPN

Вводное слово смотреть в статье Создание vpn туннеля.

Устанавливаем из репозитория сам OpenVPN и документацию к нему. Для дистрибутивов поддерживающих пакет APT команда может выглядеть так:

# apt-get install openvpn openvpn-docs

Если нужно настроить всего одно подключение, т.е. связать два компьютера (шлюза сетей), то настройка будет попроще, для подключения многих клиентов к одному серверу — чуть посложнее.

Одно VPN соединение клиент-сервер

Эта инструкция составлена на базе официальной краткой инструкции и по сути ещё более краткий её перевод.

# openvpn --genkey --secret static.key

— Копируем созданный ключ на сервер и клиент в каталог /etc/openvpn.

— Создаём конфигурационный файл на сервере /etc/openvpn/server.conf:

dev tun ifconfig 10.11.11.1 10.11.11.2 secret /etc/openvpn/static.key # Use compression on the VPN link comp-lzo # Make the link more resistent to connection failures keepalive 10 60 ping-timer-rem persist-tun persist-key # Run OpenVPN as a daemon and drop privileges to user/group nobody user nobody group nobody daemon # Allow client to reach entire server subnet route 10.9.0.0 255.255.255.0 # Set logging log-append /var/log/openvpn.log status /var/log/openvpn-status.log

— Создаём конфигурационный файл на клиенте /etc/openvpn/client.conf:

remote 81.81.81.1 dev tun ifconfig 10.11.11.2 10.11.11.1 secret /etc/openvpn/static.key # Use compression on the VPN link comp-lzo # Make the link more resistent to connection failures keepalive 10 60 ping-timer-rem persist-tun persist-key # Run OpenVPN as a daemon and drop privileges to user/group nobody user nobody group nobody daemon # Allow client to reach entire server subnet route 10.0.0.0 255.255.255.0 # Set logging log-append /var/log/openvpn.log status /var/log/openvpn-status.log

У пользователя nobody может быть другая группа. Проверим командой:

# id nobody uid=99(nobody) gid=99(nobody) groups=99(nobody)

— Запускаем openvpn демон на сервере и клиенте:

-Проверяем доступность сетей командой ping. Добавляем openvpn в автозапуск:

Несколько VPN соединений

Копируем директорию со скриптами /usr/share/doc/openvpn-docs-2.0.9/easy-rsa для AltLinux или /usr/share/doc/openvpn/examples/easy-rsa для Debian в /etc/openvpn/ для более удобного использования. Редактируем файл с переменными /etc/openvpn/easy-rsa/vars и создаём главный единый для всех сертификат (master Certificate Authority (CA) ), которым затем будем подписывать остальные сертификаты:

# source ./vars # ./clean-all # ./build-ca

Скрипт вызывает openssl с соответсвующими ключами и параметрами, создавая подкаталог keys с сертификатом и ключом.

Читайте также:  Raspberry pi linux python

Чтобы создать сертификат вручную нужно было бы запустить команду:

# openssl req -nodes -new -x509 -keyout ca.key -out ca.crt

Создаём для сервера сертификат с ключом и параметры Диффи Хелмана:

# ./build-key-server server # ./build-dh

Создаём сертификат и ключ для клиента:

Вместо server и client можно указать имена компьютеров, чтобы потом не путаться, т.к. ключи не имеют отношения к роли хоста, и сервер в одном соединении, используя те же ключи, может быть клиентом в другом.

Настроим сервер

В качестве транспортной сети будем использовать 10.11.11.0/24. То есть из этой подсети будут выделяться адреса для хостов, образующих VPN. В нашем случае один сервер и один клиент.

Скопируем в /etc/openvpn/keys/ созданные файлы ca.crt, dh1024.pem, server.crt, server.key. В Debian вместо расширений crt и key используется pem.

Скопируем в /etc/openvpn/ шаблонный конфигурационный файл /usr/share/doc/openvpn/sample-config-files/server.conf и отредактируем его. У меня без комментариев остались следующие строки:

port 1194 proto udp dev tun server 10.11.11.0 255.255.255.0 ca /etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/server.crt key /etc/openvpn/keys/server.key dh /etc/openvpn/keys/dh2048.pem user nobody group nobody persist-key persist-tun ifconfig-pool-persist /var/log/openvpn-ipp.txt client-config-dir /etc/openvpn/ccd route 10.11.11.0 255.255.255.0 route 10.9.0.0 255.255.255.0 status /var/log/openvpn-status.log log-append /var/log/openvpn.log client-to-client tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 keepalive 15 120 comp-lzo verb 4 mute 20

У пользователя nobody может быть другая группа. Проверим командой:

# id nobody uid=99(nobody) gid=99(nobody) groups=99(nobody)

Если планируется подключение нескольких клиентов, то для индивидуальной настройки каждого создаём каталог /etc/openvpn/ccd (для Alt Linux см дальше) и в нём файл с именем Common Name сертификата клиента, которое мы указывали при создании сертификата. Уточнить это имя можно посмотрев в созданном сертификате поле CN в строке

Certificate: Data: . Subject: C=RU, ST=GR, L=Gorod, O=Kontora, CN=OrgName/emailAddress=user@domain.ru

или просто подключиться к серверу и посмотреть в журнале кто подключился. Пусть это будет OrgName, тогда в файле /etc/openvpn/ccd/OrgName указываем:

iroute 10.9.0.0 255.255.255.0 push "route 10.0.0.0 255.255.255.0"

Команды из этого файла будут выполняться при подключении клиента. Первая строка должна добавить маршрут к сети клиента на стороне сервера, вторая наоборот — на клиентской стороне добавить маршрут к сети находящейся за сервером VPN. Если же у нас будет только одно подключение, то обе эти строки могут быть указаны и в главном конфигурационном файле /etc/openvpn/server.conf

Читайте также:  Find gcc path linux

В Alt Linux openvpn чрутится, поэтому нужно создать ссылку на /etc/openvpn/ccd:

# ln -s /var/lib/openvpn/etc/openvpn/ccd /etc/openvpn/ccd

То, что он чрутиться именно сюда можно узнать в стартовом скрипте /etc/init.d/openvpn, найдя переменную CHROOTDIR, или выполнив этот скрипт глянуть параметр —chroot в информации о процессе:

Настроим клиента

Скопируем в /etc/openvpn/client-name/ созданные файлы ca.crt, client.crt, client.key.

Скопируем в /etc/openvpn/ шаблонный конфигурационный файл /usr/share/doc/openvpn-docs-2.0.9/sample-config-files/client.conf и отредактируем его. У меня без комментариев остались следующие строки:

client dev tun proto udp remote 81.81.81.1 1194 resolv-retry infinite nobind user nobody group nobody persist-key persist-tun ca /etc/openvpn/client_name/ca.crt cert /etc/openvpn/client_name/client.crt key /etc/openvpn/client_name/client.key comp-lzo verb 4 mute 20 status /var/log/openvpn-client_name-stat.log log-append /var/log/openvpn-client_name.log

Если у нас на этом компьютере больше нет openvpn серверов или клиентов, то можно запустить инициализирующий (стартовый) скрипт:

Если же есть, то запускаем отдельной командой:

# openvpn /etc/openvpn/client.conf &

Если не указывать амперсент (&), то запустив команду мы потереям контроль над консолью, а указав, запустим команду в фоновом режиме. Остановить можно, удалив процесс:

# ps ax | grep vpn 12468 ? Ss 0:28 /usr/sbin/openvpn /etc/openvpn/client.conf # kill -9 12468

Для диагностики могут помочь следующие команды:

# ps ax | grep vpn # route | grep tun # /etc/init.d/openvpn status

Последняя команда работает в Alt Linux, в Debian и Suse нет.

После подключения можно проверить, что именно, какие пакеты ходят через наш тунель:

Также необходимо проверить, что все маршруты поднялись корректно:

и если нет, то добавить их вручную для проверки тунелля, а после всё же разобраться и сделать, чтобы они добавлялись автоматически:

# route add -net 10.9.0.0/24 gw 10.11.11.2

здесь мы добавили маршрут в сеть 10.9.0.0 (255.255.255.0) через виртуальный интерфейс 10.11.11.2, созданный OpenVPN.

Создание дополнительного ключа пользователя

После того как всё установлено и созданы сертификаты и ключ сервера, каждый новый ключ пользователя создаётся командой:

cd /usr/share/doc/openvpn/examples/easy-rsa/2.0 source ./vars ./build-key ClientName

Примечание: Путь к скрипту build-key может отличаться в разных дистрибутивах

См. также

Создание vpn туннеля — Общая информация по созданию VPN с перечислением нескольких способов.

Cсылки

Источник

Оцените статью
Adblock
detector