Код: Выделить всё
apt install openvpn easy-rsa bridge-utils # скопируем в эту папку все необходимые скрипты easy-rsa
Код: Выделить всё
mkdir /etc/openvpn/easy-rsaКод: Выделить всё
cp -R /usr/share/easy-rsa /etc/openvpn/Код: Выделить всё
cd /etc/openvpn/easy-rsa/Код: Выделить всё
./easyrsa init-pkiКод: Выделить всё
./easyrsa build-caКод: Выделить всё
./easyrsa gen-dhКод: Выделить всё
openvpn --genkey secret /etc/openvpn/easy-rsa/pki/ta.keyКод: Выделить всё
./easyrsa gen-crlКод: Выделить всё
./easyrsa build-server-full server nopassКод: Выделить всё
cp ./pki/ca.crt /etc/openvpn/server/ca.crtКод: Выделить всё
cp ./pki/dh.pem /etc/openvpn/server/dh.pemКод: Выделить всё
cp ./pki/crl.pem /etc/openvpn/server/crl.pemКод: Выделить всё
cp ./pki/ta.key /etc/openvpn/server/ta.keyКод: Выделить всё
cp ./pki/issued/server.crt /etc/openvpn/server/server.crtКод: Выделить всё
cp ./pki/private/server.key /etc/openvpn/server/server.keyДалее - править конфиг
vim /etc/openvpn/server.conf
Код: Выделить всё
sndbuf 0
rcvbuf 0
push "sndbuf 524288"
push "rcvbuf 524288"
tun-mtu 1500
local { ip адрес ВНЕШНЕГО интерфейса }
port 1194
proto udp
dev tap0
script-security 2
up "/etc/openvpn/up.sh br0 tap0 1500"
down "/etc/openvpn/down.sh br0 tap0"
ca /etc/openvpn/server/ca.crt
cert /etc/openvpn/server/server.crt
key /etc/openvpn/server/server.key
dh /etc/openvpn/server/dh.pem
ifconfig-pool-persist ipp.txt
server-bridge 192.168.12.1 255.255.255.0 192.168.12.100 192.168.12.253
push "route 192.168.12.0 255.255.255.0"
client-to-client
keepalive 10 120
tls-auth /etc/openvpn/server/ta.key 1 # This file is secret
key-direction 0
cipher AES-128-CBC # AES
comp-lzo
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
log-append /var/log/openvpn/openvpn.log
verb 3Код: Выделить всё
vim /etc/network/interfacesКод: Выделить всё
auto br0
iface br0 inet static
address 192.168.12.1
netmask 255.255.255.0
bridge_ports enp3s2
auto enp3s2
iface enp3s2 inet static
address 0.0.0.0
netmask 0.0.0.0
iface enp3s2 inet manual
up ip link set $IFACE up promisc on
down ip link set $IFACE down promisc off
И не забудьте подправить FireWall
скрипт up.sh
Код: Выделить всё
#!/bin/sh
BR=$1
DEV=$2
MTU=$3
/sbin/ip link set "$DEV" up promisc on mtu "$MTU"
/sbin/brctl addif $BR $DEV
Код: Выделить всё
#!/bin/sh
BR=$1
DEV=$2
/sbin/brctl delif $BR $DEV
/sbin/ip link set "$DEV" downНе забываем делать их исполняемыми:
Код: Выделить всё
chmod +x up.shКод: Выделить всё
chmod +x down.shКод: Выделить всё
rebootДалее генерируем первого пользователя с именем "TEST":
Код: Выделить всё
cd /etc/openvpn/easy-rsa/Код: Выделить всё
./easyrsa build-client-full test nopassКод: Выделить всё
ca.crt
client.ovpn
ta.key
test.crt
test.keyИх надо передать пользователю, после установки OpenVPN на его компе, скопировав это всё в папочку conf в папке opnvpn
файл client.ovpn
Код: Выделить всё
## Редактировать только эти строчки !!!!!!
# вписать имя сертификата
cert {имя сгенерированного сертификата-по инструкции "TEST"}.crt
key {имя сгенерированного сертификата-по инструкции "TEST"}.key
remote {ip адрес Вашего сервера OpenVPN} 1194
#### Далее не трогать !
##################################################
client
dev tap
proto udp
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
remote-cert-tls server
tls-auth ta.key 1
auth-nocache
cipher AES-128-CBC
comp-lzo
verb 4
mute 20
