Установка и настройка OpenVPN в CentOS 5.6

Установка OpenVPN:

Устанавливаем GPG ключ репозитория:

rpm —import http://apt.sw.be/RPM-GPG-KEY.dag.txt

Скачиваем пакет с информацией о репозитории:
i386:

wget http://apt.sw.be/redhat/el5/en/i386/dag/RPMS/rpmforge-release-0.5.2-2.el5.rf.i386.rpm

x86_64:

wget http://apt.sw.be/redhat/el5/en/x86_64/dag/RPMS/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm

Проверяем пакет:

rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm

Если проверка прошла успешно, устанавливаем:

rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm

Обновляем локальный кеш:

yum check-update

Установим OpenVPN:

yum install openvpn

Добавим openvpn в автозагрузку

chkconfig —level 345 openvpn on
Настройка OpenVPN:
Создадим конфигурационные файлы OpenVPN’а

touch /etc/openvpn/openvpn.conf
mkdir /etc/openvpn/ccd
mkdir /etc/openvpn/keys
cp -r /usr/share/doc/openvpn-*/easy-rsa /etc/openvpn/
cd /etc/openvpn/easy-rsa/2.0
chmod +x clean-all
chmod +x build*
chmod +x whichopensslcnf
chmod +x pkitool

Отредактируем /etc/openvpn/easy-rsa/2.0/vars

export KEY_COUNTRY=RU
export KEY_PROVINCE=NSK
export KEY_CITY=NOVOSIBIRSK
export KEY_ORG=»OpenVPN-TEST-INSTALLATION»
export KEY_EMAIL=»admin@example.com»

Создадим ключи:

cd /etc/openvpn/easy-rsa/2.0
. ./vars
./clean-all
./build-ca
./build-key-server vpnserver
./build-dh

Сгенерируем клиентские ключи:

cd /etc/openvpn/easy-rsa/2.0
./build-key clientname

./build-key clientname (в секции Common Name указать clientname)Не забудьте принять сертификаты

Sign the certificate? [y/n]:y

1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

Сгенерируем TLS ключ для защиты соединения

cd /etc/openvon/easy-rsa/2.0/keys
openvpn —genkey —secret ta.key

Настройка сервера:

Выше мы уже создали конфигурационный файлик для настроек сервера. Файл может называться как угодно, главное расширение чтобы было .conf. Наш называется openvpn.conf

dev tap0
port 5002
proto udp
mode server

ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/vpnius.crt
key /etc/openvpn/keys/vpnius.key
dh /etc/openvpn/keys/dh1024.pem
tls-auth /etc/openvpn/keys/ta.key 0  ; (На стороне клиента 1)

cipher AES-256-CBC

local 195.195.130.43
server-bridge 192.168.11.0 255.255.255.0 192.168.11.2 192.168.11.100
ifconfig 192.168.11.1 255.255.255.0

route 192.168.7.0 255.255.255.0 192.168.11.21
route 192.168.9.0 255.255.255.0 192.168.11.25

client-config-dir /etc/openvpn/ccd
client-to-client

keepalive 10 60
comp-lzo
max-clients 10

user nobody
group nobody

persist-key
persist-tun

crl-verify /etc/openvpn/keys/crl.pem              ; Проверка отозванных сертификатов
log /var/log/openvpn/openvpn-log.log
log-append /var/log/openvpn/openvpn-log-append.log
status /var/log/openvpn/openvpn-status.log 60
status-version 2
verb 3

client-config-dir /etc/openvpn/ccd — tсли Вы хотите, чтобы какой-то из клиентов получил индивидуальные настройки, то в этом каталоге создаем файлик с названием идентичным названию ключа для этого клиента. В нашем случае это pek_office. И вносим необходимые настройки. Для примера скину свои

ifconfig-push 192.168.11.21 255.255.255.0
#push «route 192.168.9.0 255.255.255.0 192.168.12.21»
Настройка клиента:

Создадим конфигурационный файлик для настроек клиента. Файл может называться как угодно, главное расширение чтобы было .conf

touch /etc/openvpn/client.conf

client

dev tap0

proto udp

remote 195.195.130.43 5002
resolv-retry infinite

nobind

persist-key

persist-tun

ca /etc/openvpn/keys_hab/ca.crt
cert /etc/openvpn/keys_hab/pek_office.crt
key /etc/openvpn/keys_hab/pek_office.key
ns-cert-type server
cipher AES-256-CBC

comp-lzo

log /var/log/openvpn/hab-openvpn-log.log
log-append /var/log/openvpn/hab-openvpn-log-append.log
status /var/log/openvpn/hab-openvpn-status.log 60
status-version 2

verb 3

keepalive 10 60

user nobody
group nobody

Что бы отозвать какой то сертификат:

cd /etc/openvpn/easy-rsa/2.0/
source ./vars
revoke-full clientname

Print Friendly, PDF & Email
 

Добавить комментарий

Ваш адрес email не будет опубликован.