cd vpn-setup
./init.sh
Далее следуйте указаниям установщика.
cd ~/client-configs
./make_config.sh <CLIENT_ID>
Далее следуйте указаниям генератора.
Установка необходимых утилит:
apt update
apt install -y openvpn easy-rsa ufw
mkdir ~/easy-rsa
ln -s /usr/share/easy-rsa/* ~/easy-rsa/
cd ~/easy-rsa
nano vars
Вставить содержимое vars
в ~/easy-rsa/vars
.
./easyrsa init-pki
./easyrsa gen-req server nopass
./easyrsa build-ca
./easyrsa sign-req server server
cp pki/ca.crt pki/issued/server.crt pki/private/server.key /etc/openvpn/server
openvpn --genkey secret ta.key
cp ta.key /etc/openvpn/server
mkdir -p ~/client-configs/keys
cp ta.key pki/ca.crt ~/client-configs/keys
nano /etc/openvpn/server/server.conf
Вставить содержимое server.conf
в /etc/openvpn/server/server.conf
. Поправить IP и порт.
nano /etc/sysctl.conf
Вставить содержимое sysctl.conf
в /etc/sysctl.conf
.
sysctl -p
ip route list default
Узнать имя интерфейса (e.g. eth0
).
nano /etc/ufw/before.rules
Вставить содержимое before.rules
в /etc/ufw/before.rules
.
nano /etc/default/ufw
Вставить содержимое ufw
в /etc/default/ufw
.
ufw allow <PORT>/udp
ufw allow OpenSSH
ufw disable
ufw enable
Указать выбранный порт.
systemctl -f enable [email protected]
systemctl start [email protected]
systemctl status [email protected]
mkdir -p ~/client-configs/files
nano ~/client-configs/base.conf
Вставить содержимое base.conf
в ~/client-configs/base.conf
.
Указать IP и порт OpenVPN сервера в директиве remote
в конфиге.
nano ~/client-configs/make_config.sh
Вставить содержимое make_config.sh
в ~/client-configs/make_config.sh
.
chmod +x ~/client-configs/make_config.sh
Генерация конфига:
cd ~/client-configs
./make_config.sh <CLIENT_ID>
Конфиг будет тут ~/client-configs/files/<CLIENT_ID>.ovpn
.