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