powered by simpleCommunicator - 2.0.17     © 2024 Programmizd 02
Map
Форумы / Вопросы по IT [закрыт для гостей] / Установка и настройка собственного сервера ВПН
Модераторы: basename
15 сообщений из 15, страница 1 из 1
Установка и настройка собственного сервера ВПН
    #26384
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
#####
Полезные ссылки

- Виртуальные выделенные серверы VDS SSD (KVM) в Европе
https://firstbyte.ru/vps-vds/kvm-ssd-eu/

- Country wise ASN details
https://ipgeolocation.io/browse/asn/countries/

- ASNs by Country Report
https://ipinfo.io/countries

- VyOS OpenSource Router
https://habr.com/ru/post/435568/

- VyOS документация и руководство по настройке на github
https://github.com/vyos/vyos-documentation/tree/master/docs

- You don’t have to block ICMP completely
https://ccie-or-null.net/2012/02/13/dont-block-icmp/

- Recommendations for Filtering ICMPv6 Messages in Firewalls
https://datatracker.ietf.org/doc/html/rfc4890

- Recommendations for filtering ICMP messages draft-ietf-opsec-icmp-filtering-04
https://datatracker.ietf.org/doc/html/draft-ietf-opsec-icmp-filtering-04

#####

В связи с политической ситуацией в мире на текущий момент и блокировкой доступа к большинству зарубежных ресурсов (прежде всего интересует доступ к ресурсам Hardware и Software вендоров) странами Запада актуальным является вопрос организации собственного VPN сервера для обхода блокировок.

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

#####
Выбор провайдера

Требования:
- хостинг-провайдер должен находиться в РФ во избежание проблем с оплатой услуги с использованием российских платёжных систем;
- необходима полноценнаая виртуальная машина с изоляцией ресурсов, например в среде виртуализации KVM. У хостинг-провайдеров они обычно называются VDS (так называемая VPS не подойдёт, это контейнер и все соседние VPS в рамках такой виртуализации используют некие общие ресурсы, например, ядро операционной системы, то есть вы не сможете оперировать изменениями на уровне ядра, не сможете оперировать виртуальными сетевыми интерфейсами, либо подобные действия будут сильно ограничены);
- VDS должна быть не только физически расположена на серверах виртуализации в зарубежной стране, важно, чтобы предоставленный IP-адрес принадлежал блоку IP-адресов, который в свою очередь принадлежит автономной системе AS, которая не входит в перечень AS, географически закреплённых за страной, в отношении которой наложены какие-либо ограничения;
- необходима возможность загрузки и установки операционной системы со своего дистрибутивного ISO-образа.

Моим требованиям удовлетворяет хостинг-провайдер FirstByte https://firstbyte.ru/vps-vds/kvm-ssd-eu/

На данный момент я использую тарифный план: EU-KVM-SSD-START-FRA, 1 vCPU, 512 Mb RAM, 5 Gb SSD, страна, определяемая в геолокации - Финляндия, ping из Москвы ~20 ms, месячная абонентская плата 222 р.

#####
Общая информация про операционную систему VyOS

VyOS - сетевая ОС на основе Debian, опенсорсный форк от Vyatta, после того как Brocade сделал ОС полностью коммерческой.

Сайт
https://vyos.io/

Документация
https://docs.vyos.io/en/crux/introducing/about.html

В связи с событиями в мире сайт и документация недоступны для IP-адресов из РФ c марта 2022 г. (ограничение со стороны вендора), только посредством использования VPN, однако к документации можно обратиться по адресу https://github.com/vyos/vyos-documentation/tree/master/docs и официальный форум также доступен по адресу https://forum.vyos.io/

VyOS умеет большинство популярных L2\L3 решений и технологий. Область применения в основном облачные вычисления, как виртуальный Routing and Switching. Минимальные системные требования - 512 Mb RAM, 2 Gb HDD.

На текущий момент стабильный релиз - VyOS crux 1.2. Свободный доступ к скомпилированным образам ISO для стабильного дистрибутивного релиза не предоставляется с некоторых пор в принципе, только после приобретения платной поддержки, но есть официальная подробная инструкция для самостоятельной сборки. Либо можно пользоваться нестабильными сборками в свободном доступе. Инструкция по самостоятельной компиляции дистрибутива простая, компиляция ISO образа сложностей не вызывает https://github.com/vyos/vyos-documentation/blob/master/docs/contributing/build-vyos.rst

VyOS 1.2 основан на модифицированном Debian 8 (изменения в ядро и т.п. в отличии от чистого дистрибутива) + необходимые программы для организации заявленных решений + фирменная оболочка для работы с компонентами системы.

В качестве оболочки управления конфигурацией используется CLI на подобие Cisco IOS.

#####
Скачать установочный образ VyOS

Загрузить стабильный дистрибутивный образ (собран мной) VyOS crux 1.2 можно по ссылке https://www.itwrks.org/downloads/vyos/vyos-crux-d48cfaf-amd64.iso

Контрольная сумма md5:
Код
1.
21cee7a252a413479c24537b41414f00  vyos-crux-d48cfaf-amd64.iso
#####
Основные принципы работы с VyOS CLI

#####

Режим просмотра:
- После логина попадаем в cli в режим просмотра
Код
1.
vyos@vyos:~$
При вводе команд работает подстановка по табуляции, далее интуитивно понятно. Также работают сокращения (show - sh, configure - conf и т.п.).

Например, комнада show в режим просмотра покажет доступные итерации и далее можно по каждой смотреть детально:
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
vyos@vyos:~$ show
Possible completions:
  arp           Show Address Resolution Protocol (ARP) information
  bridge        Show bridging information
  cluster       Show clustering information
  configuration Show available saved configurations
  conntrack     Show conntrack entries in the conntrack table
  conntrack-sync
                Show connection syncing information
  date          Show system time and date
  dhcp          Show DHCP (Dynamic Host Configuration Protocol) information
  dhcpv6        Show DHCPv6 (IPv6 Dynamic Host Configuration Protocol) information
  disk          Show status of disk device
  dns           Show DNS information
  file          Show files for a particular image
  firewall      Show firewall information
  flow-accounting
                Show flow accounting statistics
  hardware      Show system hardware details
  history       show command history
  host          Show host information
  incoming      Show ethernet input-policy information
  interfaces    Show network interface information
  ip            Show IPv4 routing information
  ipv6          Show IPv6 routing information
  license       Show VyOS license information
  lldp          Show lldp
  log           Show contents of current master log file
  login         Show current login credentials
  monitoring    Show currently monitored services
  nat           Show Network Address Translation (NAT) information
  nhrp          Show NHRP info
  ntp           Show peer status of NTP daemon
  openvpn       Show OpenVPN information
  policy        Show policy information
  poweroff      Show scheduled poweroff
  pppoe-server  show pppoe-server status
  protocols
  queueing      Show ethernet queueing information
  raid          Show status of RAID set
  reboot        Show scheduled reboot
  remote-config Show remote side config
  route-map     Show route-map information
  snmp          Show status of SNMP on localhost
  system        Show system information
  system-integrity
                checks the integrity of the system
  table         Show routing tables
  tech-support  Show consolidated tech-support report (private information removed)
  users         Show user information
  version       Show system version information
  vpn           Show Virtual Private Network (VPN) information
  vrrp          Show VRRP (Virtual Router Redundancy Protocol) information
  wan-load-balance
                Show Wide Area Network (WAN) load-balancing information
  webproxy      Show webproxy information
  wireguard     Show wireguard properties
  zone-policy   Show summary of zone policy for a specific zone

vyos@vyos:~$
Посмотрим информацию о интерфейсах: show interfaces (sh int)
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
vyos@vyos:~$ show interfaces
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
br22             -                                 u/u
eth0             10.11.12.13/24                    u/u
eth1             -                                 u/u
eth2             -                                 u/u
lo               127.0.0.1/8                       u/u
                 ::1/128
vyos@vyos:~$
Просмотр всей конфигурации: show configuration commands (кратко sh conf com)
Код
1.
vyos@vyos:~$ sh conf com
В режиме просмотра можно пользоваться конвейером, например отфильтровать все записи для eth1
Код
1.
vyos@vyos:~$ sh conf com | match eth1
Также будет работать, например, sh conf com | wc -l (посмотреть количество записей, например, при сравнении двух устройств) и т.п.

#####

Режим редактирования:
- configure (conf)- вход в режим редактирования
Код
1.
2.
3.
vyos@vyos:~$ configure
[edit]
vyos@vyos#
В режиме редактирования используются:
set - для добавления записи
delete (del) - для удаления

Например, зададим адрес для интерфейса eth0:
Код
1.
set interfaces ethernet eth0 address '10.11.12.13/24'
Удалим запись с адресом:
Код
1.
del interfaces ethernet eth0 address '10.11.12.13/24'
Если для интерфейса присутствуют несколько адресов, заданы какие-либо другие параметры, то полностью удалить все записи конфигурации для интерфейса eth0
Код
1.
del interfaces ethernet eth0
Аналогично, например:
del system ntp server 0.pool.ntp.org - удалит из списка серверов времени 0.pool.ntp.org, а del system ntp - удалит все серверы времени в списке ntp и любые другие параметры конфигурации для ntp.

Применение конфигурации после внеcения изменений (команд должна отработать без ошибок):
Код
1.
vyos@vyos# commit
Сохранение конфигурации:
Код
1.
vyos@vyos# save
Выход из режима конфигурации:
Код
1.
vyos@vyos# exit
Может быть необходимым в режиме конфигурации посмотреть какую-либо информацию из режима просмотра, не выходя из него. Для этого нужно воспользоваться командой run, например:
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
vyos@vyos# run show interfaces
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
br22             -                                 u/u
eth0             10.11.12.13/24                    u/u
eth1             -                                 u/u
eth2             -                                 u/u
lo               127.0.0.1/8                       u/u
                 ::1/128
[edit]
vyos@vyos#
#####
Установка и настройка VPN-сервиса

VyOS позволяет реализовать популярные решения: L2TP, Openconnect, OpenVPN, Wireguard. Я использую L2TP over IPsec.

Алгоритм установки и настройки:
- перейти в панель управления сервером из личного кабинета, загрузить дистрибутивный образ, открыть локальный терминал (веб-консоль VNC). Первичные действия по установке и конфигурированию осуществляются, как понятно, через локальный терминал;
- установить VyOS;
- (минимально для удалённого доступа к треминалу) задать выданные провайдером ip адреса на интерфейсе и маршруты по умолчанию, активировать сервис SSH для удалённого доступа, применить конфигурацию, проверить доступность из Интернет;
- сохранить конфигурацию, подключиться удалённо и завершить конфигурирование.

#####

Установка:
- Загрузиться с образа;
- login/password: vyos/vyos;
- install image;
- далее небольшой визард, ответить да на вопросы, указать новый пароль;
- перезагрузитсья после завершения.

#####

Первичная настройка с локального терминала.

Назначение адресов на сетевом интерфейсе, маршрутов по умолчанию, имени сервера, указание адресов серверов DNS и NTP, временной зоны, активация сервиса SSH.

(Действия производятся в режиме конфигурирования)

Сетевой интерфейс:
Код
1.
2.
3.
set interfaces ethernet eth0 address 'xxx.xxx.76.224/24'
set interfaces ethernet eth0 address 'xxxx:xxxx:2::3f0/48'
set interfaces ethernet eth0 description 'EXT'
Маршруты по умолчанию:
Код
1.
2.
set protocols static route 0.0.0.0/0 next-hop xxx.xxx.76.1
set protocols static route6 ::/0 next-hop xxxx:xxxx:2::1
Имя сервера:
Код
1.
2.
set system domain-name xxxxxx
set system host-name xxxxxx
Серверы DNS и NTP:
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
set system name-server '1.1.1.1'
set system name-server '8.8.8.8'
set system name-server '208.67.222.222'
set system name-server '2606:4700:4700::1111'
set system name-server '2001:4860:4860::8888'
set system name-server '2620:119:53::53'
set system ntp server 0.pool.ntp.org
set system ntp server 1.pool.ntp.org
set system ntp server 2.pool.ntp.org
Временная зона:
Код
1.
set system time-zone 'Europe/Moscow'
Активация сервиса SSH:
Код
1.
set service ssh port '22'
После выполнения, применения и сохранения первичной конфигурации - перегрузиться и проверить доступность сервера.

#####

Конфигурирование L2TP over IPsec.

Непосредственно организация VPN Remote Access:
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
set vpn ipsec ipsec-interfaces interface 'eth0'
set vpn ipsec nat-networks allowed-network xxx.xxx.0.0/0
set vpn ipsec nat-traversal 'enable'
set vpn l2tp remote-access authentication local-users username xxxxxx password xxxxxx
set vpn l2tp remote-access authentication mode 'local'
set vpn l2tp remote-access client-ip-pool start 'xxx.xxx.10.1'
set vpn l2tp remote-access client-ip-pool stop 'xxx.xxx.10.254'
set vpn l2tp remote-access description 'PrivatePerson'
set vpn l2tp remote-access dns-servers server-1 'xxx.xxx.1.1'
set vpn l2tp remote-access dns-servers server-2 'xxx.xxx.8.8'
set vpn l2tp remote-access idle '1800'
set vpn l2tp remote-access ipsec-settings authentication mode 'pre-shared-secret'
set vpn l2tp remote-access ipsec-settings authentication pre-shared-secret xxxxxx
set vpn l2tp remote-access ipsec-settings ike-lifetime '3600'
set vpn l2tp remote-access ipsec-settings lifetime '3600'
set vpn l2tp remote-access outside-address 'xxx.xxx.76.224'
NAT преобразования для подключившихся клиентов из выделенного пула адресов:
Код
1.
2.
3.
set nat source rule 999 outbound-interface 'eth0'
set nat source rule 999 source address 'xxx.xxx.10.0/24'
set nat source rule 999 translation address 'xxx.xxx.76.224'
#####

Моя полная конфигурация (применены некоторые дополнительные системные настройки, созданы правила файрвола и назначены на интерфейс и т.п):

#####
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
vyos@vpn:~$ sh conf com | strip-private
set firewall all-ping 'enable'
set firewall broadcast-ping 'disable'
set firewall config-trap 'disable'
set firewall group ipv6-network-group SRC-NET-IPV6-SSH network 'xxxx:xxxx:a003:6:1::d/128'
set firewall group network-group SRC-NET-SSH network 'xxx.xxx.204.18/32'
set firewall group network-group SRC-NET-SSH network 'xxx.xxx.113.102/32'
set firewall group port-group TCP-LOCAL port '22'
set firewall group port-group UDP-LOCAL port '33434-33534'
set firewall ipv6-name EXT-IN-IPV6 default-action 'drop'
set firewall ipv6-name EXT-IN-IPV6 rule 11 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 11 state established 'enable'
set firewall ipv6-name EXT-IN-IPV6 rule 11 state related 'enable'
set firewall ipv6-name EXT-IN-IPV6 rule 21 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 21 icmpv6 type '1'
set firewall ipv6-name EXT-IN-IPV6 rule 21 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 22 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 22 icmpv6 type '2'
set firewall ipv6-name EXT-IN-IPV6 rule 22 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 23 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 23 icmpv6 type '3'
set firewall ipv6-name EXT-IN-IPV6 rule 23 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 24 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 24 icmpv6 type '4'
set firewall ipv6-name EXT-IN-IPV6 rule 24 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 25 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 25 icmpv6 type '128'
set firewall ipv6-name EXT-IN-IPV6 rule 25 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 26 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 26 icmpv6 type '129'
set firewall ipv6-name EXT-IN-IPV6 rule 26 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 27 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 27 icmpv6 type '144'
set firewall ipv6-name EXT-IN-IPV6 rule 27 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 28 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 28 icmpv6 type '145'
set firewall ipv6-name EXT-IN-IPV6 rule 28 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 29 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 29 icmpv6 type '146'
set firewall ipv6-name EXT-IN-IPV6 rule 29 protocol 'icmpv6'
set firewall ipv6-name EXT-IN-IPV6 rule 30 action 'accept'
set firewall ipv6-name EXT-IN-IPV6 rule 30 icmpv6 type '147'
set firewall ipv6-name EXT-IN-IPV6 rule 30 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 default-action 'drop'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 11 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 11 state established 'enable'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 11 state related 'enable'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 21 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 21 icmpv6 type '1'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 21 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 22 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 22 icmpv6 type '2'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 22 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 23 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 23 icmpv6 type '3'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 23 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 24 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 24 icmpv6 type '4'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 24 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 25 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 25 icmpv6 type '128'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 25 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 26 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 26 icmpv6 type '129'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 26 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 27 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 27 icmpv6 type '130'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 27 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 28 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 28 icmpv6 type '131'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 28 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 29 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 29 icmpv6 type '132'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 29 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 30 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 30 icmpv6 type '133'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 30 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 31 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 31 icmpv6 type '134'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 31 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 32 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 32 icmpv6 type '135'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 32 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 33 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 33 icmpv6 type '136'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 33 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 34 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 34 icmpv6 type '141'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 34 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 35 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 35 icmpv6 type '142'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 35 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 36 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 36 icmpv6 type '143'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 36 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 37 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 37 icmpv6 type '148'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 37 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 38 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 38 icmpv6 type '149'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 38 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 39 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 39 icmpv6 type '151'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 39 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 40 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 40 icmpv6 type '152'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 40 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 41 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 41 icmpv6 type '153'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 41 protocol 'icmpv6'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 98 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 98 destination group port-group 'UDP-LOCAL'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 98 protocol 'udp'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 111 action 'accept'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 111 destination group port-group 'TCP-LOCAL'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 111 protocol 'tcp'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 111 source group network-group 'SRC-NET-IPV6-SSH'
set firewall ipv6-name EXT-LOCAL-IPV6 rule 111 state new 'enable'
set firewall ipv6-receive-redirects 'disable'
set firewall ipv6-src-route 'disable'
set firewall ip-src-route 'disable'
set firewall log-martians 'enable'
set firewall name EXT-IN default-action 'drop'
set firewall name EXT-IN rule 11 action 'accept'
set firewall name EXT-IN rule 11 state established 'enable'
set firewall name EXT-IN rule 11 state related 'enable'
set firewall name EXT-IN rule 21 action 'accept'
set firewall name EXT-IN rule 21 icmp type-name 'echo-reply'
set firewall name EXT-IN rule 21 protocol 'icmp'
set firewall name EXT-IN rule 22 action 'accept'
set firewall name EXT-IN rule 22 icmp type-name 'fragmentation-needed'
set firewall name EXT-IN rule 22 protocol 'icmp'
set firewall name EXT-IN rule 23 action 'accept'
set firewall name EXT-IN rule 23 icmp type-name 'echo-request'
set firewall name EXT-IN rule 23 protocol 'icmp'
set firewall name EXT-IN rule 24 action 'accept'
set firewall name EXT-IN rule 24 icmp type-name 'time-exceeded'
set firewall name EXT-IN rule 24 protocol 'icmp'
set firewall name EXT-LOCAL default-action 'drop'
set firewall name EXT-LOCAL rule 11 action 'accept'
set firewall name EXT-LOCAL rule 11 state established 'enable'
set firewall name EXT-LOCAL rule 11 state related 'enable'
set firewall name EXT-LOCAL rule 21 action 'accept'
set firewall name EXT-LOCAL rule 21 icmp type-name 'echo-reply'
set firewall name EXT-LOCAL rule 21 protocol 'icmp'
set firewall name EXT-LOCAL rule 22 action 'accept'
set firewall name EXT-LOCAL rule 22 icmp type-name 'fragmentation-needed'
set firewall name EXT-LOCAL rule 22 protocol 'icmp'
set firewall name EXT-LOCAL rule 23 action 'accept'
set firewall name EXT-LOCAL rule 23 icmp type-name 'echo-request'
set firewall name EXT-LOCAL rule 23 protocol 'icmp'
set firewall name EXT-LOCAL rule 24 action 'accept'
set firewall name EXT-LOCAL rule 24 icmp type-name 'time-exceeded'
set firewall name EXT-LOCAL rule 24 protocol 'icmp'
set firewall name EXT-LOCAL rule 98 action 'accept'
set firewall name EXT-LOCAL rule 98 destination group port-group 'UDP-LOCAL'
set firewall name EXT-LOCAL rule 98 protocol 'udp'
set firewall name EXT-LOCAL rule 101 action 'accept'
set firewall name EXT-LOCAL rule 101 protocol 'esp'
set firewall name EXT-LOCAL rule 102 action 'accept'
set firewall name EXT-LOCAL rule 102 destination port '500'
set firewall name EXT-LOCAL rule 102 protocol 'udp'
set firewall name EXT-LOCAL rule 103 action 'accept'
set firewall name EXT-LOCAL rule 103 destination port '4500'
set firewall name EXT-LOCAL rule 103 protocol 'udp'
set firewall name EXT-LOCAL rule 104 action 'accept'
set firewall name EXT-LOCAL rule 104 destination port '1701'
set firewall name EXT-LOCAL rule 104 ipsec match-ipsec
set firewall name EXT-LOCAL rule 104 protocol 'udp'
set firewall name EXT-LOCAL rule 111 action 'accept'
set firewall name EXT-LOCAL rule 111 destination group port-group 'TCP-LOCAL'
set firewall name EXT-LOCAL rule 111 protocol 'tcp'
set firewall name EXT-LOCAL rule 111 source group network-group 'SRC-NET-SSH'
set firewall name EXT-LOCAL rule 111 state new 'enable'
set firewall receive-redirects 'disable'
set firewall send-redirects 'enable'
set firewall source-validation 'disable'
set firewall syn-cookies 'enable'
set firewall twa-hazards-protection 'disable'
set interfaces ethernet eth0 address 'xxx.xxx.76.224/24'
set interfaces ethernet eth0 address 'xxxx:xxxx:2::3f0/48'
set interfaces ethernet eth0 description 'EXT'
set interfaces ethernet eth0 duplex 'auto'
set interfaces ethernet eth0 firewall in ipv6-name 'EXT-IN-IPV6'
set interfaces ethernet eth0 firewall in name 'EXT-IN'
set interfaces ethernet eth0 firewall local ipv6-name 'EXT-LOCAL-IPV6'
set interfaces ethernet eth0 firewall local name 'EXT-LOCAL'
set interfaces ethernet eth0 hw-id 'XX:XX:XX:XX:XX:38'
set interfaces ethernet eth0 smp-affinity 'auto'
set interfaces ethernet eth0 speed 'auto'
set interfaces loopback lo
set nat source rule 999 outbound-interface 'eth0'
set nat source rule 999 source address 'xxx.xxx.10.0/24'
set nat source rule 999 translation address 'xxx.xxx.76.224'
set protocols static route xxx.xxx.0.0/0 next-hop xxx.xxx.76.1
set protocols static route6 ::/0 next-hop xxxx:xxxx:2::1
set service ssh port '22'
set system config-management commit-revisions '256'
set system console device ttyS0 speed '9600'
set system domain-name xxxxxx
set system host-name xxxxxx
set system login user xxxxxx authentication encrypted-password xxxxxx
set system login user xxxxxx authentication plaintext-password xxxxxx
set system login user xxxxxx level 'admin'
set system name-server 'xxx.xxx.1.1'
set system name-server 'xxx.xxx.8.8'
set system name-server 'xxx.xxx.222.222'
set system name-server 'xxxx:xxxx:4700::1111'
set system name-server 'xxxx:xxxx:4860::8888'
set system name-server 'xxxx:xxxx:53::53'
set system ntp server xxxxx.tld
set system ntp server xxxxx.tld
set system ntp server xxxxx.tld
set system syslog global facility all level 'info'
set system syslog global facility protocols level 'debug'
set system time-zone 'Europe/Moscow'
set vpn ipsec ipsec-interfaces interface 'eth0'
set vpn ipsec nat-networks allowed-network xxx.xxx.0.0/0
set vpn ipsec nat-traversal 'enable'
set vpn l2tp remote-access authentication local-users username xxxxxx password xxxxxx
set vpn l2tp remote-access authentication mode 'local'
set vpn l2tp remote-access client-ip-pool start 'xxx.xxx.10.1'
set vpn l2tp remote-access client-ip-pool stop 'xxx.xxx.10.254'
set vpn l2tp remote-access description 'PrivatePerson'
set vpn l2tp remote-access dns-servers server-1 'xxx.xxx.1.1'
set vpn l2tp remote-access dns-servers server-2 'xxx.xxx.8.8'
set vpn l2tp remote-access idle '1800'
set vpn l2tp remote-access ipsec-settings authentication mode 'pre-shared-secret'
set vpn l2tp remote-access ipsec-settings authentication pre-shared-secret xxxxxx
set vpn l2tp remote-access ipsec-settings ike-lifetime '3600'
set vpn l2tp remote-access ipsec-settings lifetime '3600'
set vpn l2tp remote-access outside-address 'xxx.xxx.76.224'
vyos@vpn:~$
#####
...
Изменено: 02.05.2022, 16:41 - basename
Рейтинг: 5 / 0
Установка и настройка собственного сервера ВПН
    #29776
Дон Бассаэро
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем так сложно? Почему просто не поднять OpenVPN сервер? https://github.com/Nyr/openvpn-install

Либо OpenVPN Access Server, с красивой админкой, но с ограничением в два одновременных подключения для бесплатной версии - https://openvpn.net/access-server/
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #29778
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Дон Бассаэро  05.05.2022, 13:42
[игнорируется]
А зачем так сложно? Почему просто не поднять OpenVPN сервер? https://github.com/Nyr/openvpn-install

Либо OpenVPN Access Server, с красивой админкой, но с ограничением в два одновременных подключения для бесплатной версии - https://openvpn.net/access-server/
потому что L2TP over IPsec, который настраивается от телефона, до компа без установки дополнительного клиентского ПО.

OpenVPN - сложнее. То есть, надо настроить установить и настроить ОС. надо установить настроить OpenVPN, надо установить клиент на клиентское устройство.

В VyOS тоже сть OpenVPN + минимальные требования + эта ОС для этого, и в ней действий по настройке в разы меньше меньше
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #29783
Дон Бассаэро
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
basename  05.05.2022, 13:48
[игнорируется]
OpenVPN - сложнее. То есть, надо настроить установить и настроить ОС. надо установить настроить OpenVPN, надо установить клиент на клиентское устройство.
Насчет сложнее ли спорить не буду, с VyOS не экспериментировал.
Приведенные мною две ссылки это решения для "домохозяек", суммарно на покупку хостинга, настройку сервера и клиента уйдет не больше часа.
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #29789
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Дон Бассаэро  05.05.2022, 13:42
[игнорируется]
А зачем так сложно? Почему просто не поднять OpenVPN сервер? https://github.com/Nyr/openvpn-install

Либо OpenVPN Access Server, с красивой админкой, но с ограничением в два одновременных подключения для бесплатной версии - https://openvpn.net/access-server/
В инструкции рассказывается про принципы работы с VyOS, кто с ней не знаком и про сопутствующие технические моменты, а в остальном, на мой взгляд, проще не бывает :)

Вот ключевой и минимальный блок настроек после установки, которая также практически моментальна, несколько ответов на вопросы визарда и задание пароля:
Код
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
set interfaces ethernet eth0 address 'xxx.xxx.76.224/24'
set interfaces ethernet eth0 address 'xxxx:xxxx:2::3f0/48'

set protocols static route 0.0.0.0/0 next-hop xxx.xxx.76.1
set protocols static route6 ::/0 next-hop xxxx:xxxx:2::1

set system domain-name name.org
set system host-name vpn.name.org

set system name-server '1.1.1.1'
set system name-server '8.8.8.8'

set system ntp server 0.pool.ntp.org

set system time-zone 'Europe/Moscow'

set vpn ipsec ipsec-interfaces interface 'eth0'
set vpn ipsec nat-networks allowed-network xxx.xxx.0.0/0
set vpn ipsec nat-traversal 'enable'
set vpn l2tp remote-access authentication local-users username xxxxxx password xxxxxx
set vpn l2tp remote-access authentication mode 'local'
set vpn l2tp remote-access client-ip-pool start 'xxx.xxx.10.1'
set vpn l2tp remote-access client-ip-pool stop 'xxx.xxx.10.254'
set vpn l2tp remote-access description 'PrivatePerson'
set vpn l2tp remote-access dns-servers server-1 'xxx.xxx.1.1'
set vpn l2tp remote-access dns-servers server-2 'xxx.xxx.8.8'
set vpn l2tp remote-access idle '1800'
set vpn l2tp remote-access ipsec-settings authentication mode 'pre-shared-secret'
set vpn l2tp remote-access ipsec-settings authentication pre-shared-secret xxxxxx
set vpn l2tp remote-access ipsec-settings ike-lifetime '3600'
set vpn l2tp remote-access ipsec-settings lifetime '3600'
set vpn l2tp remote-access outside-address 'xxx.xxx.76.224'

set nat source rule 999 outbound-interface 'eth0'
set nat source rule 999 source address 'xxx.xxx.10.0/24'
set nat source rule 999 translation address 'xxx.xxx.76.224'
Всё. После commit/save уже можно подключаться и пользоваться.

А сколько действий нужно произвести при установкe OpenVPN?
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #29790
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Дон Бассаэро  05.05.2022, 13:56
[игнорируется]
basename  05.05.2022, 13:48
[игнорируется]
OpenVPN - сложнее. То есть, надо настроить установить и настроить ОС. надо установить настроить OpenVPN, надо установить клиент на клиентское устройство.
Насчет сложнее ли спорить не буду, с VyOS не экспериментировал.
Приведенные мною две ссылки это решения для "домохозяек", суммарно на покупку хостинга, настройку сервера и клиента уйдет не больше часа.
сейчас ещё wireguard сильно популярен ну и openconnect
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #29801
Дон Бассаэро
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
basename  05.05.2022, 14:04
[игнорируется]
А сколько действий нужно произвести при установкe OpenVPN?
1. Купить VPS/VDS (Ubuntu, Debian, AlmaLinux, Rocky Linux, CentOS and Fedora) firstbyte 1 core 512mb вполне достаточно
2. wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh
3. Ответить на несколько простых вопросов
4. Установить OpenVPN клиент и закинуть в него username.ovpn сгенерированный в предыдущем пункте

Все.
basename  05.05.2022, 14:07
[игнорируется]
сейчас ещё wireguard сильно популярен ну и openconnect
У того же автора - https://github.com/Nyr/wireguard-install
...
Изменено: 05.05.2022, 14:47 - Дон Бассаэро
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #29802
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Дон Бассаэро  05.05.2022, 14:38
[игнорируется]
basename  05.05.2022, 14:04
[игнорируется]
А сколько действий нужно произвести при установкe OpenVPN?
1. Купить VPS/VDS (Ubuntu, Debian, AlmaLinux, Rocky Linux, CentOS and Fedora) firstbyte 1 core 512mb вполне достаточно
2. wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh
3. Ответить на несколько простых вопросов
4. Установить OpenVPN клиент и закинуть в него username.ovpn сгенерированный в предыдущем пункте

Все.
basename  05.05.2022, 14:07
[игнорируется]
сейчас ещё wireguard сильно популярен ну и openconnect
У того же автора - https://github.com/Nyr/wireguard-install
Ну да, тут просто, для домохозяек. Если нет подводных камней )
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #99504
Дед-Папыхтет
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
basename  01.05.2022, 17:49
[игнорируется]
Моим требованиям удовлетворяет хостинг-провайдер FirstByte https://firstbyte.ru/vps-vds/kvm-ssd-eu/
А 5гб хватает и на ОС и на ВПН сервер???? Сори за глупый вопрос - впервые в тему лезу
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #99510
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Дед-Папыхтет  26.07.2022, 13:38
[игнорируется]
basename  01.05.2022, 17:49
[игнорируется]
Моим требованиям удовлетворяет хостинг-провайдер FirstByte https://firstbyte.ru/vps-vds/kvm-ssd-eu/
А 5гб хватает и на ОС и на ВПН сервер???? Сори за глупый вопрос - впервые в тему лезу
В vyos вот у меня на текущий момент используется 500 метров дискового пространства и 111 метров озу
pasted_image.png
ну и заявленные минимальные требования для этой ОС 2 гига диска и 512 мб памяти
...
Изменено: 26.07.2022, 14:03 - basename
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #99516
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Дед-Папыхтет [игнорируется] 

Судя по твоей задаче, только впн, тебе этих ресурсов хватит.

Я использую для просмотра зарубежных ресурсов, которые заблокированы с ИХ стороны, всякие айтишные hp.com и т.п.

P.S. Потёр картинки, то всё-таки в паблике топик и индексируется )
...
Изменено: 26.07.2022, 14:25 - basename
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #99520
Администратор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Администратор
Пользователь назначен модератором темы: basename.
...
Администратор:
Пользователь назначен модератором темы: basename.
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #301175
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Хм,
http://vyos.io/ - заблокирован для РФ, а https://vyos.net/ - доступен

И дока тоже доступна

https://docs.vyos.io/en/latest/contributing/build-vyos.html

Но может там закладки внутри )))
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #301179
Дед-Папыхтет
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
basename  17.02.2023, 11:52
[игнорируется]
Хм,
http://vyos.io/ - заблокирован для РФ, а https://vyos.net/ - доступен

И дока тоже доступна

https://docs.vyos.io/en/latest/contributing/build-vyos.html

Но может там закладки внутри )))
падишта на рутракере всё это есть ))))
...
Рейтинг: 0 / 0
Установка и настройка собственного сервера ВПН
    #301181
basename
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор темы
Дед-Папыхтет  17.02.2023, 11:53
[игнорируется]
basename  17.02.2023, 11:52
[игнорируется]
Хм,
http://vyos.io/ - заблокирован для РФ, а https://vyos.net/ - доступен

И дока тоже доступна

https://docs.vyos.io/en/latest/contributing/build-vyos.html

Но может там закладки внутри )))
падишта на рутракере всё это есть ))))
Да рутрекер не нужен

Отсюда можно качать

https://vyos.net/get/

Я так понимаю, комьюнити версию разблочили, коммерческая с саппортом недоступна.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Вопросы по IT [закрыт для гостей] / Установка и настройка собственного сервера ВПН
Модераторы: basename
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (2): Анонимы (2)
Игнорируют тему (1): erbol
Читали форум (3): Анонимы (2), Yandex Bot 6 мин.
Пользователи онлайн (40): Анонимы (32), Google Bot 1 мин., Bing Bot 1 мин., Просто Трёп 1 мин., Сталкер 2 мин., kkk-jjj 6 мин., Yandex Bot 6 мин., XEugene 7 мин., Green 9 мин.
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]