User Tools

Site Tools


ru:inbox:vpn.howto

OpenVPN server

:!: Есть много избыточных вики-страниц, относящиеся к настройке OpenVPN на OpenWrt. Некоторые из них лучше, чем другие, и другие являются устарелый запутанным беспорядок. Для достаточно полного / до современных руководство по установке, настройке и устранению неисправностей OpenVPN клиентов & серверов на OpenWrt (включая создание простой PKI), могу ли я предложить вам рассмотреть начиная с vpn.openvpn вместо этой вики. :!:

Это не то, что другие вики не стоит читать; это просто (ИМХО) vpn.openvpn является лучшим местом для начала (он был переписан с нуля всего несколько недель назад).

Хотя эта вики действительно покрывает некоторые материалы, не включенные в vpn.openvpn (например, клиенты, не OpenWRT), он все еще может быть полезным местом для посещения. Может быть, вы могли бы улучшить его дальше, а не редактировать эту вики?

FIXME: Пожалуйста, прочитайте vpn.overview и посмотреть этот старые статьи по этому вопросу: http://wiki.openwrt.org/?do=search&id=vpn и помочь перенести их , Проверьте также vpn.openvpn

OpenVPN server

Это руководство основано на использовании стабильного OpenWrt "Backfire" 10.03.1 OpenVPN. Цель состоит в том, чтобы показать, как безопасный обмен Интернет настроен в 7 шагов.

В качестве предпосылок убедитесь, что маршрутизатор имеет правильную дату в время (используйте команду "Date", чтобы проверить его). OpenVPN необходим маршрутизатор часы реального времени (RTC), чтобы быть точным. РТК точная конфигурация может быть достигнута с NtpClient. Проверьте вики о том, как установить и настроить NTP-клиент.

Установка

opkg update
opkg install openvpn openvpn-easy-rsa

Конфигурация сертификатов

cd /etc/easy-rsa
vi vars

* ДОПОЛНИТЕЛЬНО * (Закомментируйте следующие строки, если вы не хотите, чтобы ваши сертификаты были бессрочными)

export CA_EXPIRE=3650
export KEY_EXPIRE=3650

(Измените эти строки в соответствии с вашей вашими предпочтениями т.д.)

export KEY_COUNTRY="US"
export KEY_PROVINCE="CA"
export KEY_CITY="SanFrancisco"
export KEY_ORG="Fort-Funston"
export KEY_EMAIL="me@myhost.mydomain"

Генерация сертификатов

  1. Опционально: Вычищает каталог /etc/easy-rsa/keys и начинает с чистого листа
    clean-all
  2. Создать сертификаты сертификаты
    build-ca
    build-dh
  3. Создание закрытого ключа сервера
    build-key-server server
  4. Создание ключей клиента. Включите пароль, так как многие клиенты могут передумать ключа без пароля
    Обычные клавиши.:
    build-key client
    В качестве альтернативы, создавать ключи клиента в PKCS12 Format (объединяет сертификат ключа и СА в одном файле)
    build-key-pkcs12 client
  5. Скопируйте импортированные файлы в директорию /etc/openvpn, таким образом, чтобы они дублированы
    cd /etc/easy-rsa/keys
    cp dh1024.pem server.crt server.key /etc/openvpn/

Примечание - если файл dh2048.pem был создан - не забудьте изменить 1024 до 2048 на файлах конфигурации ниже . Это хорошая идея, чтобы сделать автономное резервное копирование всех созданных файлов в директории / и т.д. / простой RSA / клавиши '. Используйте утилиту вроде WinSCP для передачи файлов от маршрутизатора к компьютеру. Для поддержки SFTP, установить сервер SFTP на маршрутизаторе: <code> opkg update opkg install openssh-sftp-server </code> Это способ, которым SFTP клиент, как Filezilla может быть использована для передачи файлов и от маршрутизатора. ==== Создание конфигурации OpenVPN ==== Если вы используете UCI для настройки вашей системы, используйте этот файл конфигурации: <code> vi /etc/config/openvpn </code> <code> config 'openvpn' 'lan' option 'enable' '1' option 'port' '1194' option 'proto' 'udp' option 'dev' 'tun' option 'ca' '/etc/easy-rsa/keys/ca.crt' option 'cert' '/etc/easy-rsa/keys/server.crt' option 'key' '/etc/easy-rsa/keys/server.key' option 'dh' '/etc/easy-rsa/keys/dh1024.pem' option 'ifconfig_pool_persist' '/tmp/ipp.txt' option 'keepalive' '10 120' option 'comp_lzo' 'no' # this will break the tunnel in chaos calmer option 'persist_key' '1' option 'persist_tun' '1' option 'status' '/var/log/openvpn-status.log' option 'verb' '3' option 'server' '10.0.0.0 255.255.255.0' option 'client_to_client' '1' list 'push' 'redirect-gateway def1' list 'push' 'dhcp-option DNS 192.168.1.1' list 'push' 'route 192.168.1.0 255.255.255.0' </code> Если вы используете Tunnelblick для подключения, имейте в виду, что это добавляет "OpenVPN" в качестве области поиска, которая путает имена хостов. По умолчанию OpenWRT добавляет "LAN" как область поиска через DHCP. поэтому добавьте следующее, чтобы убедиться, клиент VPN сможет правильно свистеть машины: <code> list 'push' 'dhcp-option DOMAIN lan' </code> Если есть revoked cerficates также добавить <code> option 'crl_verify' '/etc/easy-rsa/keys/crl.pem' </code> Это позволит создать VPN на диапазоне 10.0.0.x IP. Если вы хотите, чтобы выбрать другой диапазон IP, изменить его соответствующим образом. Кроме того, изменить запись DNS 192.168.1.1 на IP-адрес вашего маршрутизатора, если по-другому. Если вы не используете конфигурацию UCI, использовать этот конфигурационный файл: <code> vi /etc/openvpn/openvpn.conf </code> <code> mode server tls-server

network options port 1194 proto udp dev tun

Certificate and key files ca /etc/easy-rsa/keys/ca.crt cert /etc/easy-rsa/keys/server.crt key /etc/easy-rsa/keys/server.key dh /etc/easy-rsa/keys/dh1024.pem client-to-client server 10.0.0.0 255.255.255.0 push "redirect-gateway def1" push "dhcp-option DNS 192.168.1.1" # Change this to your router's LAN IP Address push "route 192.168.1.0 255.255.255.0" # Change this to your network

(optional) compression (Can be slow). If not used specifically set to no and do not comment out.

with no comp-lzo can result in write to TUN/TAP : Invalid argument (code=22) error comp-lzo no #comp-lzo yes persist-key persist-tun verb 3 keepalive 10 120 log-append /var/log/openvpn/openvpn.log </code> ==== Конфигурация firewall ==== | FIXME: Лучше "больше в принципах ЮСИ" настройки брандмауэра можно найти на OpenVPN обтекаемыми-сервера установки ниже просто обходит правила с пользовательскими и не так легко видны в LUCI правила \\.
Почему этот FIXME был добавлен? Что неправильно / не хватает, что должно быть исправлено? Что такое действие, что этот FIXME должен вызывать? — Tmomas 2015/12/22 20: 24 | <code> vi /etc/config/firewall </code> |
config 'include'

      option 'path' '/etc/firewall.user'

config 'rule'

      option 'target' 'ACCEPT'
      option 'name' 'VPN'
      option 'src' 'wan'
      option 'proto' 'udp'
      option 'dest_port' '1194'

| <code> vi /etc/firewall.user </code> |iptables -t nat -A prerouting_wan -p udp --dport 1194 -j ACCEPT iptables -A input_wan -p udp --dport 1194 -j ACCEPT iptables -I INPUT -i tun+ -j ACCEPT iptables -I FORWARD -i tun+ -j ACCEPT iptables -I OUTPUT -o tun+ -j ACCEPT iptables -I FORWARD -o tun+ -j ACCEPT | ==== Автозапуск ==== - Start openvpn: <code> /etc/init.d/openvpn start </code> - Enable openvpn to let it be automatically loaded by init at startup <code> /etc/init.d/openvpn enable </code> ===== Конфигурирование клиента ===== GNU/Linux <code> mkdir ~/VirtualNet </code> Windows # Создайте папку с именем пример VirtualNet в C: / Program Files Скачать ca.crt , client.crt , client.key и dh1024.pem находится в / и т.д. / простой RSA / ключи / на маршрутизатор, и поместить их в директорию VirtualNet # Откройте текстовый редактор и добавьте следующие строки … # Сохраните файл под именем client.ovpn в VirtualNet |client tls-client dev tun proto udp remote SERVER-IP 1194 # Change to your router's External IP resolv-retry infinite nobind ca ca.crt cert client.crt key client.key dh dh1024.pem #comp-lzo

persist-tun persist-key verb 3 | ===== Client Usage GNU/Linux - Download OpenVPN ===== ==== Debian ==== <code> sudo apt-get install openvpn </code> ==== Arch Linux ==== <code> pacman -S openvpn </code> ==== Gentoo ==== <code> emerge openvpn </code> ===== Использование Client для Windows - Скачать OpenVPN клиент ===== ==== В операционной системе Windows XP / 32 Bit ==== http://openvpn.se/download.html * Выберите Инсталляционный пакет * ==== On Windows Vista 64 ==== * Похоже, что Windows Vista 64 не любит драйвер TUN / TAP из пакета клиента;
Так что нам нужно, чтобы загрузить весь пакет OpenVPN включая сервера и клиента от http://openvpn.net/index.php/open- источник / downloads.html
Выберите установщик Windows ===== Использование клиента на Android =====    - Установить и запустить OpenVPN для Android Арне Швабе (http://goo.gl/1Gu0sm~~HEAD=dobj).    - Скопируйте файл
client.p12 к вашей SD карте или во внутренней памяти.    - Создать новый профиль. В настройках "Basic", поставки вашего маршрутизатора WAN IP адрес или адрес сервера и отключить "LZO сжатия." Выберите "PKCS12 Файл" в разделе "Тип" и выберите client.p12 файла. Введите пароль вашего ключа в разделе "PKCS12 Password", чтобы он автоматически войти. Примечание: Возможно, вам потребуется установить tun.ko с помощью TUN.ko Installer (http://goo.gl/mFX8v). tun.ko также может быть скомпилирован в ядро, в этом случае модуль tun.ko не стоит на вашем Android устройстве. ===== Использование клиента MacOS X / Иос / … ===== ДЕЛАТЬ ===== Использование клиента GNU / Linux Connect ===== <Код> кд / главная / Ваш пользователь / VirtualNet / Sudo OpenVPN client.ovpn </ Код> ===== Использование Windows Connect Client =====    * Перейдите к директории VirtualNet    * Щелкните правой кнопкой мыши на client.ovpn '' и выберите работать с графическим интерфейсом OpenVPN

ru/inbox/vpn.howto.txt · Last modified: 2016/08/02 12:57 by demonnwx