Поднимаем ocserv с аутентификацией LDAP

Мы уже рассматривали установку и настройку SSL VPN сервера OpenConnect (ocserv) на Ubuntu 20.04.
В этой статье, мы быстро развернем VPN сервер в контейнере Docker c возможностью аутентификации пользователей через Microsoft AD.
Предполагается, что у вас уже установлен движок контейнеризации приложений Docker и Compose.
1. Необходимо создать пользователя ocserv в AD от имени которого будет происходить подключение к AD для получения списка пользователей.
2. Создать директорию для проекта, а также файл docker-compose.yml
version: "3.7"
services:
ocserv:
container_name: ocserv
image: morganonbass/ocserv-ldap:latest
ports:
- "443:443/tcp"
- "443:443/udp"
environment:
LISTEN_PORT: 443
TUNNEL_MODE: 'split_include'
TUNNEL_ROUTES: '192.168.1.0/24'
DNS_SERVERS: 1.1.1.1
SPLIT_DNS_DOMAINS: 'domain.com'
CLIENTNET: 192.168.248.0
CLIENTNETMASK: 255.255.255.0
BASEDN: 'dc=corp,dc=domain,dc=com'
LDAPURI: 'ldap://192.168.1.36/'
BINDDN: 'CN=ocserv,CN=Users,DC=corp,DC=domain,DC=com'
BINDPW: 'yourpass'
SEARCHSCOPE: 'sub'
PAM_LOGIN_ATTRIBUTE: 'sAMAccountName'
CA_CN: 'VPN CA'
CA_ORG: 'OCSERV'
CA_DAYS: 9999
SRV_CN: 'vpn.domain.com'
SRV_ORG: 'DOMAIN'
SRV_DAYS: 9999
volumes:
- './config/:/config/'
cap_add:
- NET_ADMIN
privileged: true
restart: unless-stopped
3. Запускаем и проверяем:
docker-compose -f /path/to/project/docker-compose.yml up -d
docker ps
docker logs -f ocserv
Источники:
https://hub.docker.com/r/morganonbass/ocserv-ldap
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Салом, можно ещё создать файл в /etc/nginx/proxy_params, a потом добавить туда следующие строки:
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
после просто подключить в конфиге nginx:
proxy_pass https://your_backend;
include proxy_params;
на Ubuntu такой файл уже существует можно просто подключить
Можно ещё так:
1. Создаем отдельную сеть для наших контейнеров
docker network create zbx-net
2. Указываем сеть по умолчанию в docker-compose.yml
networks:
default:
name: zbx-net
external: true
Спасибо за отзыв, написал отдельную статью по установке и настройке Ansible
certbot certonly --force-renew -d newsite.com