Поднятие своего VPN сервера.
Ссылки
Зачем?
Пользоваться бесплатными (а иногда даже платными) VPN серверами небезопасно, ведь бесплатный сыр бывает только в мышеловке. Особенно это касается китайских VPN серверов. Поэтому хорошим выходом будет поднять свой VPN сервер на базе OpenVPN. В этой статье я расскажу как это сделать.
Для настройки вам понадобиться купить свой VPS сервер, с физическим адресом той страны которая вам нужна.
Установка
Обновим зависимости
В процессе попросил ввести ваш пароль.
sudo apt update
sudo apt upgrade
Найдем свой IP.
IP записан в панеле инструментов, если все таки не нашли, то можно найти его вот так (любая из команд):
ip a
ip a show eth0
dig TXT +short o-o.myaddr.l.google.com @ns1.google.com | awk -F'"' '{ print $2}'
Запуск скрипта установки open-ssh
Рекомендую ознакомиться с данным скриптом перед запуском, например так vim openvpn-install.sh
wget https://git.io/vpn -O openvpn-install.sh
Сделаем скрипт исполняемым
chmod +x openvpn-install.sh
Запустим скрипт: sudo ./openvpn-install.sh
Далее будет предложена последовательность ввода
Which IPv4 address should be used?
1) your-ip-address
2) 172.25.0.1
3) 172.17.0.1
4) 172.23.0.1
IPv4 address [1]: 1
Which protocol should OpenVPN use?
1) UDP (recommended)
2) TCP
Protocol [1]: 1
What port should OpenVPN listen to?
Port [1194]:
Select a DNS server for the clients:
1) Current system resolvers
2) Google
3) 1.1.1.1
4) OpenDNS
5) Quad9
6) AdGuard
DNS server [1]: 3
Enter a name for the first client:
Name [client]: username
OpenVPN installation is ready to begin.
Press any key to continue...
После установки проверим статус нашей службы
➜ ~ sudo systemctl status openvpn-server@server.service
● openvpn-server@server.service - OpenVPN service for server
Loaded: loaded (/lib/systemd/system/openvpn-server@.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2023-01-02 13:26:35 MSK; 11s ago
Docs: man:openvpn(8)
https://community.openvpn.net/openvpn/wiki/Openvpn24ManPage
https://community.openvpn.net/openvpn/wiki/HOWTO
Main PID: 759692 (openvpn)
Status: "Initialization Sequence Completed"
Tasks: 1 (limit: 4612)
Memory: 1.0M
CGroup: /system.slice/system-openvpn\x2dserver.slice/openvpn-server@server.service
└─759692 /usr/sbin/openvpn --status /run/openvpn-server/status-server.log --status-version 2 --suppress-timestamps --config server.conf
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: Could not determine IPv4/IPv6 protocol. Using AF_INET
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: Socket Buffers: R=[212992->212992] S=[212992->212992]
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: UDPv4 link local (bound): [AF_INET]217.25.89.126:1194
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: UDPv4 link remote: [AF_UNSPEC]
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: GID set to nogroup
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: UID set to nobody
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: MULTI: multi_init called, r=256 v=256
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: IFCONFIG POOL: base=10.8.0.2 size=252, ipv6=0
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: IFCONFIG POOL LIST
Jan 02 13:26:35 837899-ck18921.tmweb.ru openvpn[759692]: Initialization Sequence Completed
Остановить ее можно с помощью sudo systemctl stop openvpn-server@server.service
команды. Так же вы можете сделать restart, start
.
Настройка
На сервере появится файл ~/deskcop.ovpn, скопируем его через scp на клиентское устройство.
Возможно файл называется иначе, и лежит в другом месте, найти его можно командой: sudo find / -iname "*.ovpn"
scp <username>@<ip-address>:~/deskcop.ovpn .
Загрузим приложение для работы с open-vpn. В моем случае это macos
Далее копируем данный файл в open vpn клиент (открыть директорию, куда был скопирован файл, из терминала в macos можно с помощью open .
команды)