Установка OpenVPN-сервера — различия между версиями
Root (обсуждение | вклад) (Новая страница: «Установим и настроим Openvpn-сервер, для удалённого подключения клиентов к внутренней сети.…») |
Root (обсуждение | вклад) |
||
| (не показаны 2 промежуточные версии этого же участника) | |||
| Строка 10: | Строка 10: | ||
Первым делом включим консоль управления <code>/etc/openvpn/server.conf</code> | Первым делом включим консоль управления <code>/etc/openvpn/server.conf</code> | ||
management 127.0.0.1 5555 | management 127.0.0.1 5555 | ||
| + | |||
| + | |||
| + | Приложение написано на python, так что устанавливаем необходимые пакеты | ||
| + | # apt install gcc libgeoip-dev python-virtualenv python-dev geoip-database-extra uwsgi uwsgi-plugin-python | ||
| + | |||
| + | |||
| + | Активируем виртуальное окружение, устанавливаем пакет openvpn-monitor и с помощью gunicorn запускаем web-приложение | ||
| + | # mkdir /srv/www/openvpn-monitor | ||
| + | # cd /srv/www/openvpn-monitor | ||
| + | # virtualenv . | ||
| + | # . bin/activate | ||
| + | # pip install --upgrade pip | ||
| + | # pip install openvpn-monitor gunicorn | ||
| + | # gunicorn openvpn-monitor -b 0.0.0.0:8080 | ||
| + | |||
| + | Проверяем http://openvpn.domain.com:8080 если открылся дефолтный интерфейс, стопаем и продолжаем настройку. | ||
| + | |||
| + | |||
| + | Готовим конфиг <code>/srv/www/openvpn-monitor/lib/python2.7/site-packages/openvpn-monitor.conf</code> | ||
| + | [OpenVPN-Monitor] | ||
| + | site=Encry | ||
| + | #logo=logo.jpg | ||
| + | latitude=51.30 | ||
| + | longitude=39.10 | ||
| + | maps=True | ||
| + | geoip_data=/srv/www/openvpn-monitor/GeoLite2-City.mmdb | ||
| + | datetime_format=%d/%m/%Y %H:%M:%S | ||
| + | show_monitor_ip=True | ||
| + | |||
| + | [VPN1] | ||
| + | host=localhost | ||
| + | port=5555 | ||
| + | name=OpenVPN Server | ||
| + | show_disconnect=True | ||
| + | show_vpn_ip=True | ||
| + | |||
| + | Находим на просторах интернета базу GeoLite2-City.mmdb и пихаем её сюда <code>/srv/www/openvpn-monitor/</code> | ||
| + | |||
| + | |||
| + | Настраиваем конфиг uWSGI <code>/etc/uwsgi/apps-available/openvpn-monitor.ini</code> | ||
| + | [uwsgi] | ||
| + | base = /srv/www | ||
| + | project = openvpn-monitor | ||
| + | logto = /var/log/uwsgi/app/%(project).log | ||
| + | plugins = python | ||
| + | chdir = %(base)/%(project) | ||
| + | virtualenv = %(chdir) | ||
| + | module = openvpn-monitor:application | ||
| + | manage-script-name = true | ||
| + | mount=/openvpn-monitor=openvpn-monitor.py | ||
| + | |||
| + | Делаем симлинк и рестартим сервис | ||
| + | # ln -s /etc/uwsgi/apps-available/openvpn-monitor.ini /etc/uwsgi/apps-enabled/ | ||
| + | # service uwsgi restart | ||
| + | |||
| + | |||
| + | Устанавливаем nginx и готовим конфиг <code>/etc/nginx/sites-available/openvpn-monitor.conf</code> | ||
| + | server { | ||
| + | listen 80; | ||
| + | server_name openvpn.domain.com; | ||
| + | access_log /var/log/nginx/openvpn-monitor.access.log; | ||
| + | error_log /var/log/nginx/openvpn-monitor.error.log; | ||
| + | |||
| + | location / { | ||
| + | uwsgi_pass unix:///run/uwsgi/app/openvpn-monitor/socket; | ||
| + | include uwsgi_params; | ||
| + | } | ||
| + | } | ||
| + | |||
| + | Делаем симлинк и рестартим сервис | ||
| + | # ln -s /etc/nginx/sites-available/openvpn-monitor.conf /etc/nginx/sites-enabled/ | ||
| + | # service nginx restart | ||
| + | |||
| + | |||
| + | После этого проверяем работу мониторинга. | ||
| + | |||
| + | |||
| + | При написании использовался данный источник http://openvpn-monitor.openbytes.ie/#configuration | ||
Текущая версия на 21:32, 16 мая 2020
Установим и настроим Openvpn-сервер, для удалённого подключения клиентов к внутренней сети. Прикрутим к нему мониторинг. Установим web-интерфейс управления сервером, пользователями и сертификатами. Исходная система будет Debian 10. Погнали.
Здесь будет схема планируемой сети
Здесь будет описан процесс установки сервера
Мониторинг
Первым делом включим консоль управления /etc/openvpn/server.conf
management 127.0.0.1 5555
Приложение написано на python, так что устанавливаем необходимые пакеты
# apt install gcc libgeoip-dev python-virtualenv python-dev geoip-database-extra uwsgi uwsgi-plugin-python
Активируем виртуальное окружение, устанавливаем пакет openvpn-monitor и с помощью gunicorn запускаем web-приложение
# mkdir /srv/www/openvpn-monitor # cd /srv/www/openvpn-monitor # virtualenv . # . bin/activate # pip install --upgrade pip # pip install openvpn-monitor gunicorn # gunicorn openvpn-monitor -b 0.0.0.0:8080
Проверяем http://openvpn.domain.com:8080 если открылся дефолтный интерфейс, стопаем и продолжаем настройку.
Готовим конфиг /srv/www/openvpn-monitor/lib/python2.7/site-packages/openvpn-monitor.conf
[OpenVPN-Monitor] site=Encry #logo=logo.jpg latitude=51.30 longitude=39.10 maps=True geoip_data=/srv/www/openvpn-monitor/GeoLite2-City.mmdb datetime_format=%d/%m/%Y %H:%M:%S show_monitor_ip=True [VPN1] host=localhost port=5555 name=OpenVPN Server show_disconnect=True show_vpn_ip=True
Находим на просторах интернета базу GeoLite2-City.mmdb и пихаем её сюда /srv/www/openvpn-monitor/
Настраиваем конфиг uWSGI /etc/uwsgi/apps-available/openvpn-monitor.ini
[uwsgi] base = /srv/www project = openvpn-monitor logto = /var/log/uwsgi/app/%(project).log plugins = python chdir = %(base)/%(project) virtualenv = %(chdir) module = openvpn-monitor:application manage-script-name = true mount=/openvpn-monitor=openvpn-monitor.py
Делаем симлинк и рестартим сервис
# ln -s /etc/uwsgi/apps-available/openvpn-monitor.ini /etc/uwsgi/apps-enabled/ # service uwsgi restart
Устанавливаем nginx и готовим конфиг /etc/nginx/sites-available/openvpn-monitor.conf
server {
listen 80;
server_name openvpn.domain.com;
access_log /var/log/nginx/openvpn-monitor.access.log;
error_log /var/log/nginx/openvpn-monitor.error.log;
location / {
uwsgi_pass unix:///run/uwsgi/app/openvpn-monitor/socket;
include uwsgi_params;
}
}
Делаем симлинк и рестартим сервис
# ln -s /etc/nginx/sites-available/openvpn-monitor.conf /etc/nginx/sites-enabled/ # service nginx restart
После этого проверяем работу мониторинга.
При написании использовался данный источник http://openvpn-monitor.openbytes.ie/#configuration