Исходный код вики 5. Инструкция по сервису

Версия 42.1 от Ирина Сафонова на 01.09.2023, 17:39

Последние авторы
1 **Содержание**
2
3 {{toc/}}
4
5 = Вход в консоль =
6
7 ----
8
9 Для выполнения базовой настройки сервиса зайдите на установленный образ сервиса через консоли VMRC или VMWC.
10 [[image:__fileCreatedFromDataURI__.png]]
11
12 = Этапы настройки =
13
14 В ходе настройки команды вводятся в консоли или в SSH.
15
16 == Шаг 1. Включение доступа через SSH ==
17
18 Укажите порт:
19
20 {{code language="none"}}
21 set service ssh port
22 {{/code}}
23
24 == Шаг 2. Настройка внешнего интерфейса (eth0) ==
25
26 Укажите внешний IP-адрес
27
28 {{code language="none"}}
29 set interfaces ethernet eth0 address
30 {{/code}}
31
32 и маску сети:
33
34 {{code language="none"}}
35 set interfaces ethernet eth0 description OUTSIDE
36 {{/code}}
37
38 == Шаг 3. Настройте внутренний IP-адрес ==
39
40 Укажите внутренний IP-адрес и маску сети.
41
42 {{code language="none"}}
43 set interfaces ethernet eth1 description INSIDE
44 {{/code}}
45
46 == Шаг 4. Пропишите маршрут ==
47
48 {{code language="none"}}
49 set protocols static route 0.0.0.0/0 next-hop *IP-адрес маршрутизатора* distance 1
50 {{/code}}
51
52 === Подшаг 4.1. Пропишите [[DNS>>https://wiki.dfcloud.ru/bin/view/Glossary/DNS]]-сервера для [[маршрутизатора>>https://wiki.dfcloud.ru/bin/view/Glossary/%D0%9C%D0%B0%D1%80%D1%88%D1%80%D1%83%D1%82%D0%B8%D0%B7%D0%B0%D1%82%D0%BE%D1%80]] ===
53
54 {{code language="none"}}
55 set system name-server *адрес DNS-сервера*
56 {{/code}}
57
58 == Шаг 5. Настройка [[NAT>>https://wiki.dfcloud.ru/bin/view/Glossary/NAT]] ==
59
60 === Подшаг 5.1. Укажите NAT-правила для внешнего интерфейса eth0 ===
61
62 {{code language="none"}}
63 set nat source rule 100 outbound-interface eth0
64 {{/code}}
65
66 === Подшаг 5.2. Укажите правило NAT для адресов внутренней подсети ===
67
68 Укажите внутренний IP-адрес и маску сети:
69
70 {{code language="none"}}
71 set nat source rule 100 source address
72 {{/code}}
73
74 === Подшаг 5.3 Используйте NAT трансляции для общения ресурса с внешним миром ===
75
76 {{code language="none"}}
77 set nat source rule 100 translation address masquerade
78 {{/code}}
79
80 == Шаг 6. Пробросьте порты 1-к-1 (Port Forwarding) ==
81
82 === Подшаг 6.1. Создайте правила NAT номер 10 с указанием комментария ===
83
84 {{code language="none"}}
85 set nat destination rule 10 description 'Port Forward: HTTP to *укажите внутренний IP-адрес* (port 80->80)'
86 {{/code}}
87
88 === Подшаг 6.2. Укажите внешний порт ===
89
90 {{code language="none"}}
91 set nat destination rule 10 destination port 80
92 {{/code}}
93
94 === Подшаг 6.3 Укажите, что пробрасываемый порт должен быть на внешнем интерфейсе eth0 ===
95
96 {{code language="none"}}
97 set nat destination rule 10 inbound-interface eth0
98 {{/code}}
99
100 === Подшаг 6.4. Укажите, что перенаправляться будет только TCP-трафик ===
101
102 {{code language="none"}}
103 set nat destination rule 10 protocol tcp
104 {{/code}}
105
106 === Подшаг 6.5. Укажите, что трафик будет перенаправляться на внутренний адрес ===
107
108 {{code language="none"}}
109 set nat destination rule 10 translation address *укажите внутренний IP-адрес*
110 {{/code}}
111
112 == Шаг 7. Пробросьте трафик на другой порт ==
113
114 === Подшаг 7.1. Сделайте настройки по аналогии с шагом 6 ===
115
116 Настройки [[аналогичны>>https://wiki.dfcloud.ru/bin/view/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20%D0%92%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5%20%D1%81%D0%B5%D1%82%D0%B5%D0%B2%D0%BE%D0%B5%20%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%BE%20VyOS/5.%20%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F/#H4284304336.41F44043E43144043E44143F43E44044243E4321-43A-128PortForwarding29]], за исключением того, что пробрасывается TCP и UDP трафик (protocol tcp_udp).
117
118 {{code language="none"}}
119 set nat destination rule 20 description 'Port Forward: SSH to *укажите внутренний IP-адрес* (port 22->20022)'
120 set nat destination rule 20 destination port 20022
121 set nat destination rule 20 inbound-interface eth0
122 set nat destination rule 20 protocol tcp_udp
123 set nat destination rule 20 translation address *укажите внутренний IP-адрес*
124
125 {{/code}}
126
127 === Подшаг 7.2. Укажите, на какой порт будет перенаправляться трафик (22-й), приходящий на порт 20022 ===
128
129 {{code language="none"}}
130 set nat destination rule 20 translation port 22
131 {{/code}}
132
133 == Шаг 8. Создайте [[DHCP>>https://wiki.dfcloud.ru/bin/view/Glossary/DHCP]]-сервер для внутренней сети ==
134
135 === Подшаг 8.1. Создайте DHCP-сервер для внутренней сети ===
136
137 {{code language="none"}}
138 set service dhcp-server shared-network-name LAN authoritative enable
139 {{/code}}
140
141 {{info}}
142 LAN — пример названия. Название может быть любым.
143 {{/info}}
144
145 === Подшаг 8.2. Укажите подсеть, для которой будет работать DHCP сервер, и диапазон адресов, который будет выдавать DHCP сервер ===
146
147 {{code language="none"}}
148 set service dhcp-server shared-network-name LAN subnet * укажите адрес внутренней подсети* start *укажите внутренний IP-адрес* stop * укажите внутренний IP-адрес*
149 {{/code}}
150
151 === Подшаг 8.3. Укажите параметры, которые DHCP-сервер будет передавать клиентам ===
152
153 {{code language="none"}}
154 set service dhcp-server shared-network-name LAN subnet *укажите адрес внутренней подсети* default-router *укажите внутренний IP-адрес*
155 {{/code}}
156
157 === Подшаг 8.4. Укажите маршрутизатор по умолчанию ===
158
159 {{code language="none"}}
160 set service dhcp-server shared-network-name LAN subnet *укажите адрес внутренней подсети* dns-server *укажите внутренний IP-адрес*
161 {{/code}}
162
163 === Подшаг 8.5. Укажите DNS-сервер ===
164
165 {{code language="none"}}
166 set service dhcp-server shared-network-name LAN subnet *укажите адрес внутренней подсети* domain-name internal.blackdiver.net
167 {{/code}}
168
169 === Подшаг 8.6. Укажите имя локального домена (internal.blackdiver.net) ===
170
171 {{code language="none"}}
172 set service dhcp-server shared-network-name LAN subnet *укажите адрес внутренней подсети* lease 3600
173 {{/code}}
174
175 {{info}}
176 3600 секунд — время аренды адреса.
177 {{/info}}
178
179 == Шаг 9. Назначьте статические IP-адреса для DHCP-сервера ==
180
181 Для статического назначения IP адресов в DHCP используется стандартный алгоритм привязки MAC адреса к IP адресу. В примере сервер (SERVER1 – имя сервера. Имя может быть любым) с MAC-адресом 00:50:56:0c:02:14 статически привязан к IP- адресу 217.198.88.69 (пример).
182
183 {{code language="none"}}
184 set service dhcp-server shared-network-name LAN subnet 217.198.0.0/24 static-mapping SERVER-NAME ip-address 217.198.88.69
185 set service dhcp-server shared-network-name LAN subnet 217.198.0.0/24 static-mapping SERVER-NAME mac-address 00:50:56:0c:02:14
186 {{/code}}
187
188 == Шаг 10. Настройка DNS forwarding ==
189
190 Возможно только кэширование и перенаправление DNS-ответов от других DNS-серверов. Также доступен свой набор статических DNS-записей.
191
192 === Подшаг 10.1. Укажите DNS-сервера, у которых маршрутизатор будет запрашивать информацию (8.8.8.8 и 8.8.4.4) ===
193
194 Также вы можете использовать системные DNS-сервера. В таком случае вместо ручного перечисления серверов укажите:
195
196 {{code language="none"}}
197 set service dns forwarding name-server 8.8.8.8
198 {{/code}}
199
200 или:
201
202 {{code language="none"}}
203 set service dns forwarding system
204 {{/code}}
205
206 === Подшаг 10.2. Укажите количество кэшируемых DNS-запросов, которые будут храниться в памяти маршрутизатора ===
207
208 В данном случае 0. DNS запросы будут не кешироваться, а каждый раз запрашиваться:
209
210 {{code language="none"}}
211 set service dns forwarding cache-size 0
212 {{/code}}
213
214 === 10.3. Укажите интерфейс, на котором будет работать DNS forwarding (eth1) ===
215
216 {{code language="none"}}
217 set service dns forwarding listen-on eth1
218 {{/code}}
219
220 == Шаг 11. Создайте статические DNS-записи ==
221
222 Укажите, что для DNS записи ХХХХХХХ.com всегда отвечает адресом xxx.xxx.xxx.xxx. Для таких записей не запрашивается информация у других DNS-серверов, а сразу отдается заранее определенный ответ.
223
224 {{code language="none"}}
225 set system static-host-mapping host-name ХХХХХХХ.com inet xxx.xxx.xxx.xxx
226 {{/code}}
227
228 == Шаг 12. Настройте [[L2TP>>https://wiki.dfcloud.ru/bin/view/Glossary/L2TP]]/IPsec сервера ==
229
230 ==== Подшаг 12.1 Настройте IPSec
231 Подшаг 12.1.1. Укажите, на каком интерфейсе будет работать[[ IPsec>>https://wiki.dfcloud.ru/bin/view/Glossary/IPsec]] (eth0) ====
232
233 {{code language="none"}}
234 set vpn ipsec ipsec-interfaces interface eth0
235 {{/code}}
236
237 ==== Подшаг 12.1.2. Включите NAT Traversal ====
238
239 Это необходимо, чтобы корректно работать с клиентами, у которых NAT.
240
241 {{code language="none"}}
242 set vpn ipsec nat-traversal enable
243 {{/code}}
244
245 ==== Подшаг 12.1.3. Укажите, откуда могут подключаться клиенты (0.0.0.0/0 – без ограничений) ====
246
247 {{code language="none"}}
248 set vpn ipsec nat-networks allowed-network 0.0.0.0/0
249 {{/code}}
250
251 === Подшаг 12.2. Настройте L2TP ===
252
253 ==== Подшаг 12.2.1. Укажите внешний адрес, на который будут подключаться клиенты ====
254
255 {{code language="none"}}
256 set vpn l2tp remote-access outside-address *укажите внешний IP-адрес*
257 {{/code}}
258
259 ==== Подшаг 12.2.2. Укажите диапазон адресов, которые будут выдаваться клиентам ====
260
261 {{code language="none"}}
262 set vpn l2tp remote-access client-ip-pool start *укажите внутренний IP-адрес от*
263 set vpn l2tp remote-access client-ip-pool stop *укажите внутренний IP-адрес до*
264 {{/code}}
265
266 ==== Подшаг 12.2.3. Для подключения используйте PSK-ключ ====
267
268 {{code language="none"}}
269 set vpn l2tp remote-access ipsec-settings authentication mode pre-shared-secret
270 {{/code}}
271
272 ==== Подшаг 12.2.4. Задайте PSK-ключ (MySecretKey) ====
273
274 {{code language="none"}}
275 set vpn l2tp remote-access dns-servers server-1 *укажите внутренний IP-адрес*
276 {{/code}}
277
278 ==== Подшаг 12.2.5. Укажите DNS-сервер, который будет передаваться подключившимся пользователям ====
279
280 В примере используется ранее настроенный DNS forwarder. Для аутентификации пользователей будет использоваться собственная база.
281
282 {{code language="none"}}
283 set vpn l2tp remote-access authentication mode local
284 {{/code}}
285
286 ==== Подшаг 12.2.6. Создайте пользователя с именем **user1** и паролем **MyPassword** ====
287
288 {{code language="none"}}
289 set vpn l2tp remote-access authentication local-users username user1 password MyPassword
290 {{/code}}
291
292 Если пользователю требуется дать статический адрес при подключении через VPN, то введите следующее:
293
294 {{code language="none"}}
295 set vpn l2tp remote-access authentication local-users username user1 static-ip 217.198.88.70.1 (пример)
296 {{/code}}
297
298 В результате пользователи могут подключаться по L2TP к маршрутизатору, а также имеют доступ к внутренней сети.
299
300 == Шаг 13. Настройте выход пользователей в интернет через [[VPN>>https://wiki.dfcloud.ru/bin/view/Glossary/VPN]] ==
301
302 Добавьте правило NAT для адресов XXX.XXX.XXX.X-XXX:
303
304 {{code language="none"}}
305 set nat source rule 110 outbound-interface eth0
306 set nat source rule 110 source address *укажите внутреннюю подсеть*
307 set nat source rule 110 translation address masquerade
308 {{/code}}
309
310 Создание правил NAT для L2TP полностью аналогично настройке NAT для внутренней сети.
311
312 Если для [[VPN-клиентов>>https://wiki.dfcloud.ru/bin/view/Glossary/VPN-%D0%BA%D0%BB%D0%B8%D0%B5%D0%BD%D1%82]] используется DNS forwarder, то для каждого соединения [[L2TP>>https://wiki.dfcloud.ru/bin/view/Glossary/L2TP]] опубликуйте сервис DNS forwarder. Подключите одновременно множество пользователей и после этого добавьте интерфейсы в DNS forwarding:
313
314 {{code language="none"}}
315 set service dns forwarding listen-on l2tp0
316 set service dns forwarding listen-on l2tp1
317 set service dns forwarding listen-on l2tp2
318 {{/code}}
319
320 == Шаг 14. Примените настройки и сохраните конфигурации ==
321
322 {{code language="none"}}
323 commit
324 save
325 {{/code}}
326
327 **[[В начало>>path:/bin/view/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%20%D0%92%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5%20%D1%81%D0%B5%D1%82%D0%B5%D0%B2%D0%BE%D0%B5%20%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%BE%20VyOS/]] **🡱
328 **[[К предыдущему разделу>>doc:Сервис Виртуальное сетевое устройство VyOS.4\. Структура платежей.WebHome]] **🡰