Jump to content
Sign in to follow this  
YugoS

Поднимаем свой собственный VPN-сервер за 5 минут

Recommended Posts

Как установить бесплатный VPN(виртуальная частная сеть) сервер на Debian Linux версии 9.x или 8.x для защиты вашей активности в интернете от злоумышленников при открытом wi-fi или другом открытом интернет соединении?

ОpenVPN — это бесплатное и общедоступное программное обеспечение для систем типа Linux/Unix. Таким образом осуществляется двух или трех уровневая OSI защита сетевого подключения на основе протокола SSL/TLS. VPN позволяет осуществлять защищенные соединения в незащищенных общественных сетях, таких как wi-fi сеть в аэропорту или отеле. Виртуальной частной сети так же необходим доступ к вашему корпоративному, домашнему серверу или серверу компании. Вы можете обойти сайты с защитой по геолокации, повысить вашу приватность и безопасность онлайн.

Этот туториал содержит в себе пошаговые инструкции для настройки OpenVPN сервера на Debian Linux v8.x/9.x, включая настройки фаервола ufw/iptables .

Нужно сделать следующее:

  1. Найти и записать свой публичный IP адрес.
  2. Установить скрипт openvpn-install.sh.
  3. Запустить openvpn-install.sh для установки OpenVPN сервера.
  4. Подсоединить OpenVPN сервер используя IOS/Android/Linux/Windows клиент.
  5. Подтвердить возможность соединения.

Шаг 1 – Найти ваш публичный IP адрес

Используйте любую из приведенных ниже команд для определения вашего публичного IPv4 адреса. Если ваш интерфейс назван eth0 или eth1, введите:

 $ ip addr show eth0 

Или:

 $ ip addr show eth1 

Так же можно использовать команды host или dig как показано ниже:

 $ host myip.opendns.com resolver1.opendns.com 

 

Или:

 $ dig TXT +short o-o.myaddr.l.google.com @ns1.google.com 

 

Образец вывода:

debian-image1.png.8c1136eda2660966532e164eb0aa2784.png
Запишите публичный IP адрес 104.237.156.154, то есть публичный IP адрес вашего сервера OpenVPN.

Шаг 2 – Обновить вашу систему и установить ufw

Введите команду apt-get/команду apt для обновления системы:

$ sudo apt-get update
$ sudo apt-get upgrade 

 

Образец вывода:

Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
libc-bin libc-l10n libc6 libexpat1 linux-image-4.9.0-3-amd64 locales
multiarch-support
7 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 46.6 MB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://security.debian.org/debian-security stretch/updates/main amd64 libc6 amd64 2.24-11+deb9u1 [2,695 kB]
Get:2 http://security.debian.org/debian-security stretch/updates/main amd64 libc-bin amd64 2.24-11+deb9u1 [778 kB]
Get:3 http://security.debian.org/debian-security stretch/updates/main amd64 multiarch-support amd64 2.24-11+deb9u1 [200 kB]
Get:4 http://security.debian.org/debian-security stretch/updates/main amd64 libc-l10n all 2.24-11+deb9u1 [820 kB]
Get:5 http://security.debian.org/debian-security stretch/updates/main amd64 locales all 2.24-11+deb9u1 [3,290 kB]
Get:6 http://security.debian.org/debian-security stretch/updates/main amd64 libexpat1 amd64 2.2.0-2+deb9u1 [83.4 kB]
Get:7 http://security-cdn.debian.org stretch/updates/main amd64 linux-image-4.9.0-3-amd64 amd64 4.9.30-2+deb9u2 [38.7 MB]
Fetched 46.6 MB in 2s (15.5 MB/s)
Reading changelogs... Done
Preconfiguring packages ...
(Reading database ... 28439 files and directories currently installed.)
Preparing to unpack .../libc6_2.24-11+deb9u1_amd64.deb ...
Unpacking libc6:amd64 (2.24-11+deb9u1) over (2.24-11) ...
Setting up libc6:amd64 (2.24-11+deb9u1) ...
(Reading database ... 28439 files and directories currently installed.)
Preparing to unpack .../libc-bin_2.24-11+deb9u1_amd64.deb ...
Unpacking libc-bin (2.24-11+deb9u1) over (2.24-11) ...
Setting up libc-bin (2.24-11+deb9u1) ...
Updating /etc/nsswitch.conf to current default.
(Reading database ... 28439 files and directories currently installed.)
Preparing to unpack .../multiarch-support_2.24-11+deb9u1_amd64.deb ...
Unpacking multiarch-support (2.24-11+deb9u1) over (2.24-11) ...
Setting up multiarch-support (2.24-11+deb9u1) ...
(Reading database ... 28439 files and directories currently installed.)
Preparing to unpack .../libc-l10n_2.24-11+deb9u1_all.deb ...
Unpacking libc-l10n (2.24-11+deb9u1) over (2.24-11) ...
Preparing to unpack .../locales_2.24-11+deb9u1_all.deb ...
Unpacking locales (2.24-11+deb9u1) over (2.24-11) ...
Preparing to unpack .../libexpat1_2.2.0-2+deb9u1_amd64.deb ...
Unpacking libexpat1:amd64 (2.2.0-2+deb9u1) over (2.2.0-2) ...
Preparing to unpack .../linux-image-4.9.0-3-amd64_4.9.30-2+deb9u2_amd64.deb ...
Unpacking linux-image-4.9.0-3-amd64 (4.9.30-2+deb9u2) over (4.9.30-2) ...
Setting up libexpat1:amd64 (2.2.0-2+deb9u1) ...
Processing triggers for libc-bin (2.24-11+deb9u1) ...
Setting up libc-l10n (2.24-11+deb9u1) ...
Processing triggers for man-db (2.7.6.1-2) ...
Setting up linux-image-4.9.0-3-amd64 (4.9.30-2+deb9u2) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-4.9.0-3-amd64
/etc/kernel/postinst.d/zz-update-grub:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.9.0-3-amd64
Found initrd image: /boot/initrd.img-4.9.0-3-amd64
done
Setting up locales (2.24-11+deb9u1) ...
Generating locales (this might take a while)...
en_US.UTF-8... done
Generation complete.

 

После установки ядра Linux необходима перезагрузка. Для этого нужно ввести следующую команду:

 $ sudo reboot 

 

Установить ufw (Простой фаервол)

Для установки ufw на Debian 9/8, нужно ввести команду apt-get

 $ sudo apt-get install ufw

 

Образец вывода:

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
ufw
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 164 kB of archives.
After this operation, 848 kB of additional disk space will be used.
Get:1 http://mirrors.linode.com/debian stretch/main amd64 ufw all 0.35-4 [164 kB]
Fetched 164 kB in 0s (13.1 MB/s)
Preconfiguring packages ...
Selecting previously unselected package ufw.
(Reading database ... 28439 files and directories currently installed.)
Preparing to unpack .../archives/ufw_0.35-4_all.deb ...
Unpacking ufw (0.35-4) ...
Setting up ufw (0.35-4) ...

Creating config file /etc/ufw/before.rules with new version

Creating config file /etc/ufw/before6.rules with new version

Creating config file /etc/ufw/after.rules with new version

Creating config file /etc/ufw/after6.rules with new version
Created symlink /etc/systemd/system/multi-user.target.wants/ufw.service ? /lib/systemd/system/ufw.service.
Processing triggers for systemd (232-25) ...
Processing triggers for man-db (2.7.6.1-2) ...
Processing triggers for rsyslog (8.24.0-1) ...

 

Необходимо открыть затребованные порты, такие как SHH port 22, 80, 443 и так далее:

$ sudo ufw allow 22
$ sudo ufw allow 80
$ sudo ufw allow 443

 

Для включения фаервола запустим:

$ sudo ufw enable 

 

Состояние правил фаервола:

$ sudo ufw status

 

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

 

Образец вывода:

Status: active

To Action From
--  ------ ----
22 ALLOW Anywhere
80 ALLOW Anywhere
443 ALLOW Anywhere
22 (v6) ALLOW Anywhere (v6)
80 (v6) ALLOW Anywhere (v6)
443 (v6) ALLOW Anywhere (v6)

 

 

Шаг 3 – Установка скрипта openvpn-install.sh

Введем команду wget:

$ wget https://git.io/vpn -O openvpn-install.sh

 

Образец вывода:

--2017-06-29 20:19:41-- https://git.io/vpn
Resolving git.io (git.io)... 23.23.159.159, 50.16.231.196, 23.23.154.116, ...
Connecting to git.io (git.io)|23.23.159.159|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://raw.github.com/Nyr/openvpn-install/master/openvpn-install.sh [following]
--2017-06-29 20:19:41-- https://raw.github.com/Nyr/openvpn-install/master/openvpn-install.sh
Resolving raw.github.com (raw.github.com)... 151.101.40.133
Connecting to raw.github.com (raw.github.com)|151.101.40.133|:443... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://raw.githubusercontent.com/Nyr/openvpn-install/master/openvpn-install.sh [following]
--2017-06-29 20:19:41-- https://raw.githubusercontent.com/Nyr/openvpn-install/master/openvpn-install.sh
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.40.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.40.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 14938 (15K) [text/plain]
Saving to: ‘openvpn-install.sh’

openvpn-install.sh 100%[===================>] 14.59K --.-KB/s in 0s

2017-06-29 20:19:41 (134 MB/s) - ‘openvpn-install.sh’ saved [14938/14938]

 

Запустим скрипт openvpn-install.sh для установки и настройки сервера OpenVPN автоматически:

$ sudo bash openvpn-install.sh

 

Когда будет установлен IP адрес 104.237.156.154 (замените 104.237.156.154 на ваш актуальный IP) и порт на 1194 (или 443, если вы не используете веб сервер). Используйте OpenDNS или Google DNS серверы с VPN. Далее, введите имя клиента (например, iPhone, Nexus6, LinuxRouter, BackupServer и другие). Наконец, нажмите клавишу ‘Enter’ для установки и настройки OpenVPN на вашей системе:

debian-image2-500x388.png.3fb5dd6a31f85f69d951fbbc89fb7cec.png
На этом всё, ваш OpenVPN сервер настроен и готов к работе. Вы можете посмотреть файл добавленных правил фаервола /etc/rc.local используя команду cat:

$ cat /etc/rc.local

 

Образец вывода:

#!/bin/sh -e
iptables -I FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -I FORWARD -s 10.8.0.0/24 -j ACCEPT
iptables -I INPUT -p udp --dport 1194 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 ! -d 10.8.0.0/24 -j SNAT --to 104.237.156.154
exit 0

 

Вы можете посмотреть настройки вашего OpenVPN сервера сгенерировав их скриптом приведенным ниже (не редактируйте этот файл вручную):

$ sudo more /etc/openvpn/server.conf
$ sudo vi -M /etc/openvpn/server.conf

 

Образец вывода:

port 1194
proto udp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-auth ta.key 0
topology subnet
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 173.230.155.5"
push "dhcp-option DNS 173.255.212.5"
push "dhcp-option DNS 173.255.219.5"
push "dhcp-option DNS 173.255.241.5"
push "dhcp-option DNS 173.255.243.5"
push "dhcp-option DNS 173.255.244.5"
push "dhcp-option DNS 173.230.145.5"
push "dhcp-option DNS 173.230.147.5"
push "dhcp-option DNS 74.207.241.5"
push "dhcp-option DNS 74.207.242.5"
keepalive 10 120
cipher AES-256-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
crl-verify crl.pem

 

Как запускать/останавливать/перезапускать OpenVPN сервер на Debian Linux 9.x/8.x LTS?

Для остановки службы OpenVPN:

$ sudo systemctl stop openvpn@server

 

Для запуска службы OpenVPN:

$ sudo systemctl start openvpn@server

 

Для перезапуска службы OpenVPN:

$ sudo systemctl restart openvpn@server

 

 

Шаг 4 – Настройка клиента

На сервере вы найдете файл настройки клиента по имени ~/macos-vpn-client.ovpn. Всё, что вам нужно сделать – скопировать этот файл на ваш локальный рабочий стол используя scp и предоставить этому файлу соединение с вашим OpenVPN клиентом:

$ scp vivek@104.237.156.154:~/macos-vpn-client.ovpn .

 

Далее вам нужно установить OpenVPN клиент для вашей операционной системы:

Настройки клиента OpenVPN MacOS/OS X

Для начала установите OpenVPN macos клиент. Далее дважды нажмите на файл macos-vpn-client.ovpn и он откроется в вашем клиенте tunnelblick. Нажмите “Only me” для установки.

debian-image3.png.0662cc7ad3d8f04e4313b4b7e1f60e23.png
Единожды нажав на кнопку ‘Connect’ вы будете онлайн. Используйте приведенные ниже команды на клиентах MacOS для подтверждения замены вашего публичного IP на IP VPN сервера (введите в вашем локальном Linux/Unix/MacOS)

$ dig TXT +short o-o.myaddr.l.google.com @ns1.google.com

 

Образец вывода:

"104.237.156.154"

 

Вы можете проверить связь OpenVPN сервера частного IP:

$ ping 10.8.0.1

 

Образец вывода:

PING 10.8.0.1 (10.8.0.1): 56 data bytes
64 bytes from 10.8.0.1: icmp_seq=0 ttl=64 time=287.760 ms
64 bytes from 10.8.0.1: icmp_seq=1 ttl=64 time=283.046 ms
64 bytes from 10.8.0.1: icmp_seq=2 ttl=64 time=278.271 ms
64 bytes from 10.8.0.1: icmp_seq=3 ttl=64 time=283.679 ms
^C
--- 10.8.0.1 ping statistics ---
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 278.271/283.189/287.760/3.367 ms

 

Настройка клиента Linux OpenVPN

Установка клиента OpenVPN на RHEL/CentOS Linux командой yum:

$ sudo yum install openvpn

 

Или установки клиента OpenVPN на Debian/Ubuntu Linux Linux используйте команду apt:

$ sudo apt install openvpn

 

Далее, скопируйте macos-vpn-client.ovpn как показано ниже:

$ sudo cp macos-vpn-client.ovpn /etc/openvpn/client.conf

 

Проверьте соединение от CLI:

$ sudo openvpn --client --config /etc/openvpn/client.conf

 

Ваша система Linux будет автоматически подключена, когда компьютер перезапустится используя скрипт /etc/init.d/openvpn:

$ sudo /etc/init.d/openvpn start

 

Для систем построенных на systemd нужно поступать следующим образом:

$ sudo systemctl start openvpn@client

 

Проверьте соединение:

$ ping 10.8.0.1 # Ping to OpenVPN server gateway

$ ip route # Make sure routing setup
$ dig TXT +short o-o.myaddr.l.google.com @ns1.google.com # Make sure your public IP set to OpenVPN server

 

Настройка клиента FreeBSD OpenVPN

Первое, установите клиент OpenVPN, введите:

$ sudo pkg install openvpn

 

Далее, скопируйте macos-vpn-client.ovpn следующим образом:

$ mkdir -p /usr/local/etc/openvpn/
$ sudo cp macos-vpn-client.ovpn /usr/local/etc/openvpn/client.conf

 

Редактирование /etc/rc.conf и добавление по примеру приведенному ниже:

openvpn_enable="YES"
openvpn_configfile="/usr/local/etc/openvpn/client.conf"

 

Запуск службы OpenVPN:

$ sudo /usr/local/etc/rc.d/openvpn start

 

Подтверждение:

$ ping 10.8.0.1 #Ping to OpenVPN server gateway

$
$ netstat -nr #Make sure routing setup
$
$ drill myip.opendns.com @resolver1.opendns.com #Make sure your public IP set to OpenVPN server

 

Ссылки:

На этом всё, у вас установлен OpenVPN сервер, что поможет достигнуть нового уровня приватности на только вашем облачном сервере Debian 9.x/8.x.

  • Like 3

Share this post


Link to post
Share on other sites

Что так сложно? Не проще ли взять у же готовый качественный vpn? Хоть платный хоть бесплатный ВПН. Я лично на https://brovpn.io/ сижу и никаких проблем и гемороя с настройкой

Share this post


Link to post
Share on other sites
56 минут назад, Антон сказал:

Что так сложно? Не проще ли взять у же готовый качественный vpn? Хоть платный хоть бесплатный ВПН. Я лично на https://brovpn.io/ сижу и никаких проблем и гемороя с настройкой

Реклама это хорошо, но не проще. Одно дело поднять свою впнку зная, что все настройки запривачены и не переживать за возможный перехват паролей, данных банковских карт и т.д. И.другое дело доверять стороннему сервису, особенно бесплатным вариантам, где каждый второй ловится на том, что собирает информацию о своих пользователях. Для трейдеров, майнеров и всех тех кто имеет дело с баблом и конфиденциальной инфой - это крайне глупо пользоваться бесплатными впн сервисами. 

Бесплатные впнки подойдут максимум для открытия заблокированых сайтов, для большего их просто опасно использовать если конечно не хочешь однажды узнать, что все твои аккаунты вскрыты. Сервисы конечно могут, говорить что они самые честные и им можно на 100% доверять, но только реальность говорит об обратном.

Платные впнки по 5 баксов в месяц обычно немного лучше, но всё-равно не создают нужный уровень приватности. Поэтому иногда лучше заморочиться и не переживать по ночам.

Share this post


Link to post
Share on other sites

Если не затруднит, подскажите пожалуйста, где можно арендовать виртуальный сервер подешевле?

Share this post


Link to post
Share on other sites
2 часа назад, andy201 сказал:

Если не затруднит, подскажите пожалуйста, где можно арендовать виртуальный сервер подешевле?

Скинул в лс.

Share this post


Link to post
Share on other sites
В 26.05.2019 в 22:07, YugoS сказал:

Скинул в лс.

Спасибо ещё раз

Share this post


Link to post
Share on other sites

Empire Market is huge and most notorious Onion Network Market at the time. Being this famous it faces the problem of constant Ddos attack witch leads prime Empire Market link to be down, and alternative link too. That means that empire marketplace have to create a lot of URLs and onion mirrors and links. And the thing is that there is not much ways users can get a active Empire Market mirrors.
So that's why Empire Market decided to create an original website where their users can always discover working URLs and onion mirrors, for quick access to Empire Market. Here it is http://empiremarketurl.com make sure to use whenever you you wish to enter to darknet market empire market.
 

Share this post


Link to post
Share on other sites

Если не затруднит, могли бы мне подсказать, где можно арендовать подешевле.

Share this post


Link to post
Share on other sites

Empire Market is huge and most trendy Deep Web Marketplace there is right now. Being this big it faces the problem of constant Ddos attacks causes essential Empire Market URL to be down, and alternative mirrors too. That means to empire market need to create more and more URL and onion mirror and links. And the thing is that there is not too much ways users can discover a active Empire Marketplace mirror.
That's why Empire Market decided to create an official page where their users can always find working URLs and onion mirrors, for quick access to Empire Market. Here it is http://empiremarket-link.com make sure you using whenever you you have to access to darknet market empire market.
 

Share this post


Link to post
Share on other sites
В 27.04.2019 в 08:58, Антон сказал:

Что так сложно? Не проще ли взять у же готовый качественный vpn? Хоть платный хоть бесплатный ВПН. Я лично на https://brovpn.io/ сижу и никаких проблем и гемороя с настройкой

спасибо ТС'у, долго искал как поднять буду пробовать

 

а чужой брать это тоже самое что и без впна сидеть почти))) если тебе твоя инфа дорога! 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×