Linux (debian) - простейшая настройка pptpd

Задача - установить, настроить VPN-сервер с аутентификацией. Учетные данные будут храниться в файле. Приступим.

Установка pptpd

apt-get install pptpd

Настройка pptpd

File /etc/pptpd.conf

option /etc/ppp/pptpd-options
logwtmp

## custom settings
bcrelay netif
localip x.x.x.x
remoteip 10.0.0.1

netif - активный интерфейс с реальным IP-адресом сервера
x.x.x.x - IP-адрес сервера

File /etc/ppp/chap-secrets

# Secrets for authentication using CHAP
# client        server  secret                  IP addresses
vpn-login       pptpd   vpn-password            "*"

vpn-login - логин для подключения по VPN
vpn-password - пароль для подключения по VPN

Настройка iptables, включение форвардинга

Кроме настроек фильтрации, необходимо настроить NAT и правила форвардинга для клиента VPN:

iptables -t nat -A POSTROUTING -s 10.0.0.1/32 -o netif -j SNAT --to-source x.x.x.x
iptables -A FORWARD -s 10.0.0.1/32 -j ACCEPT                                                                                                                                                                                                           
iptables -A FORWARD -d 10.0.0.1/32 -m state --state RELATED,ESTABLISHED -j ACCEPT                                                                                                                                                                      
iptables -A FORWARD -j REJECT --reject-with icmp-port-unreachable

netif - активный интерфейс с реальным IP-адресом сервера
x.x.x.x - IP-адрес сервера

Активируем форвардинг в ядре

File /etc/sysctl.conf

...
net.ipv4.ip_forward=1

Выполним

sysctl -p /etc/sysctl.conf

Ссылки

FreeBSD - VPN сервер

Установка FreeRadius

 # cd /usr/ports/net/freeradius
 # make config
 ┌────────────────────────────────────────────────────────────────────┐  
 │ │[ ] KERBEROS      With Kerberos support                         │ │
 │ │[ ] HEIMDAL       With Heimdal Kerberos support                 │ │
 │ │[ ] LDAP          With LDAP database support                    │ │
 │ │[X] MYSQL         With MySQL database support                   │ │
 │ │[ ] PGSQL         With PostgreSQL database support              │ │
 │ │[ ] UNIXODBC      With unixODBC database support                │ │
 │ │[ ] FIREBIRD      With Firebird database support (EXPERIMENTAL) │ │
 │ │[ ] SNMP          With SNMP support                             │ │
 │ │[ ] EDIR          With Novell eDirectory support                │ │
 │ │[ ] NOPERL        Do not require perl (use only if necessary)   │ │
 │ │[ ] EXPERIMENTAL  Build experimental modules                    │ │
 │ │                                                                │ │
 │ │                                                                │ │
 │ │                                                                │ │
 │ │                                                                │ │
 ├─└────────────────────────────────────────────────────────────────┘─┤
 # make install clean
 # echo "radiusd_enable="YES"" >> /etc/rc.conf

 
blog.txt · Последние изменения: 2013/01/23 14:51 — Антон Бугреев · []