Установка OpenVPN сервера в Ubuntu 18 — различия между версиями
Материал из m6a
Vshpagin (обсуждение | вклад) |
Vshpagin (обсуждение | вклад) (→Квалификация) |
||
(не показано 13 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | ==Задача== | ||
+ | *Установить и настроить сервер OpenVPN | ||
+ | *Подговить настройки для клиента OpenVPN | ||
+ | ==Окружение== | ||
+ | *[[:Category:Ubuntu 18.04|Ubuntu 18.04]] | ||
+ | *[[OpenVPN 2.2]] | ||
+ | |||
+ | ==Требования== | ||
+ | ==Квалификация== | ||
+ | *[[:Category:Системный администратор|Системный администратор]] | ||
+ | |||
+ | ==Последовательность действий== | ||
+ | ===Установка сервера=== | ||
*Обновим систему | *Обновим систему | ||
apt-get -y update && apt-get -y upgrade | apt-get -y update && apt-get -y upgrade | ||
*Установим необходимые пакеты | *Установим необходимые пакеты | ||
apt-get -y install openvpn easy-rsa | apt-get -y install openvpn easy-rsa | ||
+ | |||
+ | ===Настройка сервера=== | ||
*Перейдем к настройкам | *Перейдем к настройкам | ||
cd /etc/openvpn/ | cd /etc/openvpn/ | ||
Строка 57: | Строка 72: | ||
*Применим настройки сетевого экрана | *Применим настройки сетевого экрана | ||
ufw reload | ufw reload | ||
+ | ===Настройка клиента=== | ||
*Создадим сертификат клиента | *Создадим сертификат клиента | ||
cd /etc/openvpn/certificates/ && source vars && ./build-key client | cd /etc/openvpn/certificates/ && source vars && ./build-key client | ||
Строка 85: | Строка 101: | ||
[общий секретный ключ] | [общий секретный ключ] | ||
</tls-auth> | </tls-auth> | ||
− | remote | + | remote vpn.company.ru 1194 |
cipher AES-256-CBC | cipher AES-256-CBC | ||
verb 2 | verb 2 | ||
Строка 96: | Строка 112: | ||
nobind | nobind | ||
route 192.168.1.0 255.255.255.0 | route 192.168.1.0 255.255.255.0 | ||
+ | ==Используемые материалы== | ||
+ | *[https://linuxconfig.org/openvpn-setup-on-ubuntu-18-04-bionic-beaver-linux OpenVPN Setup on Ubuntu 18.04 Bionic Beaver Linux] | ||
+ | [[Category:Ubuntu|Ubuntu]] | ||
+ | [[Category:OpenVPN|OpenVPN]] | ||
+ | [[Category:Системный администратор|Системный администратор]] |
Текущая версия на 14:49, 21 ноября 2018
Содержание
Задача
- Установить и настроить сервер OpenVPN
- Подговить настройки для клиента OpenVPN
Окружение
Требования
Квалификация
Последовательность действий
Установка сервера
- Обновим систему
apt-get -y update && apt-get -y upgrade
- Установим необходимые пакеты
apt-get -y install openvpn easy-rsa
Настройка сервера
- Перейдем к настройкам
cd /etc/openvpn/
- Создадим каталог сертификации
make-cadir certificates && cd certificates
- Установим переменные
vi vars export KEY_CONFIG="$EASY_RSA/openssl-1.0.0.cnf" export KEY_COUNTRY="RU" export KEY_PROVINCE="MOS" export KEY_CITY="MOSCOW" export KEY_ORG="Company" export KEY_EMAIL="vpn@company.ru" export KEY_OU="IT"
- Загрузим переменные
source ./vars
- Создадим центральный сертификат
./clean-all && ./build-ca
- Создадим сертификат сервера
./build-key-server server
- Создадим параметры Диффи-Хеллмана
./build-dh
- Создадим общий секретный ключ
openvpn --genkey --secret keys/ta.key
- Скопируем ключи и сертификаты в каталог настроек
cp keys/{server.crt,server.key,ca.crt,dh2048.pem,ta.key} /etc/openvpn
- Создадим файл настроект сервера
vi /etc/openvpn/server.conf mode server tls-server port 1194 proto udp dev tun ca ca.crt cert server.crt key server.key # This file should be kept secret dh dh2048.pem server 10.8.0.0 255.255.255.0 ifconfig-pool-persist /var/log/openvpn/ipp.txt server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100 push "route 192.168.1.0 255.255.255.0" keepalive 10 120 tls-auth ta.key 0 # This file is secret cipher AES-256-CBC
- Запустим сервер OpenVPN
systemctl start openvpn@server
- Проверим статус сервера OpenVPN
systemctl status openvpn@server
- Откроем порты для сервера OpenVPN
ufw allow openvpn
- Настроим маскарадинг для сервера OpenVPN
vi /etc/ufw/before.rules -A POSTROUTING -s 10.8.0.0/8 -o eth1 -j MASQUERADE
- Применим настройки сетевого экрана
ufw reload
Настройка клиента
- Создадим сертификат клиента
cd /etc/openvpn/certificates/ && source vars && ./build-key client
- Получим центральный сертификат
cat ca.crt
- Получим сертификат клиента
cat certificates/keys/client.crt
- Получим ключ клиента
cat certificates/keys/client.key
- Получим общий секретный ключ
cat certificates/keys/ta.key
- Создадим файл настроект клиента
client tls-client proto udp dev tun <ca> [центральный сертификат] </ca> <cert> [сертификат клиента] </cert> <key> [ключ клиента] </key> key-direction 1 <tls-auth> [общий секретный ключ] </tls-auth> remote vpn.company.ru 1194 cipher AES-256-CBC verb 2 mute 20 keepalive 10 120 persist-key persist-tun float resolv-retry infinite nobind route 192.168.1.0 255.255.255.0