Вернуться назад

Настройка pptp-сервера Centos7

#Настройка vpn сервера pptpd на CentOS 7 x64
yum update && yum upgrade

#узнаем версию CentOS:
cat /etc/centos-release
uname -a

#установка mc
yum install mc

#проверяем есть ли в системе ifconfig (в CentOS 7 minimal его по умолчанию нет)
ifconfig -a

#если command not found, то ставим net-tools
yum install net-tools

#устанавливаем pptpd
yum install pptpd.x86_64 -y
chkconfig pptpd on

#файл /etc/sysctl.conf:
net.ipv4.ip_forward = 1

#файл /etc/pptpd.conf:
localip 10.0.0.1
remoteip 10.0.0.100-200 #диапазон адресов для клиентов

#проверяем чтобы в файле была строчка:
option /etc/ppp/options.pptpd

#файл /etc/ppp/options.pptpd:
ms-dns 8.8.8.8
ms-dns 8.8.4.4

#файл /etc/ppp/chap-secrets добавляем пользователей и пароли:
# Secrets for authentication using CHAP
# client        server  secret                  IP addresses
username    pptpd    password    *

#обновляем параметры:
sysctl -p

# редактируем файл /etc/ppp/ip-up — перед последней строчкой вставить (без этого некоторые сайты не грузятся)
/sbin/ifconfig $1 mtu 1400

service pptpd restart

#Удаляем firewalld, вместо него ставим IPTABLES
#—
#With RHEL 7 / CentOS 7, firewalld was introduced to manage iptables. IMHO, firewalld is more suited for workstations than for server environments.
#It is possible to go back to a more classic iptables setup. First, stop and mask the firewalld service:

systemctl stop firewalld
systemctl mask firewalld

#устанавливаем iptables
yum install iptables-services

#старт iptables при загрузке сервера
systemctl enable iptables

#команда для дампа текущего состояния iptables:  iptables-save >conf.txt

#название внешнего сетевого интерфейса — смотрим файл в /etc/sysconfig/network-scripts (ifcfg-enp0s6)
#enp0s6 — название интерфейса, подставляем его в файл /etc/sysconfig/iptables, файл должен быть таким:

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o enp0s6 -j MASQUERADE
COMMIT
# Generated by iptables-save v1.4.21 on Fri Nov 13 02:12:55 2015
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [853:222169]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -i enp0s6 -p tcp -m tcp --dport 1723 -j ACCEPT
-A INPUT -i enp0s6 -p gre -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A INPUT -p gre -j ACCEPT
-A INPUT -p tcp -m tcp --dport 1723 -j ACCEPT
-A FORWARD -i ppp+ -o enp0s6 -j ACCEPT
-A FORWARD -i enp0s6 -o ppp+ -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

##Управление сервисом: systemctl [stop|start|restart] iptables

#Перезапускаем iptables:
systemctl restart iptables

#перезапускаем сервер
reboot


igel
Дата: 25 января 2019 г. в 00:54:44

Автор: igel