Перейти к основному контенту

Глава 3: Шлюзы роутера — Port Forwarding (Проброс портов)

<p>На данный момент наш сервер имеет фиксированный адрес внутри дома, а роутер — фиксированный статический адрес в интернете. Однако, если сейчас кто-то попытается постучаться на ваш внешний IP-адрес из интернета, роутер просто заблокирует этот запрос. Из соображений безопасности любой домашний роутер по умолчанию работает как глухая стена. Чтобы пропустить пользователей к нашей будущей вики-системе, нужно прорубить в этой стене "окна" — настроить проброс портов.</p>



<hr />


<h2>

1. Что такое порты и зачем нужен их проброс?</h2>


<p>Представьте, что ваш внешний статический IP-адрес — это адрес огромного многоквартирного дома. Порты — это номера конкретных квартир в этом доме. В сетевом мире разные типы трафика ходят по строго определенным портам (квартирам):</p>

<ul>

   <li><strong> Порт 80 (HTTP)</strong> — стандартный порт для обычного, незашифрованного веб-трафика. Через него веб-серверы начинают общение с браузерами.</li>

   <li><strong> Порт 443 (HTTPS)</strong> — стандартный порт для защищенного, зашифрованного веб-трафика. Именно через него в итоге будет работать наш безопасный BookStack.</li>

</ul>


<p><strong>Port Forwarding (Проброс портов)</strong> — это правило межсетевого экрана на роутере, которое гласит: <em>«Если кто-то из интернета стучится в квартиру №80 или №443, перенаправь этот трафик прямо на мой внутренний сервер Debian (192.168.1.100) в его внутренние квартиры №80 и №443 соответственно»</em>.</p>



<hr />


<h2>

2. Пошаговая настройка на роутере</h2>


<p>Вам необходимо пробросить два основных порта: <strong>80</strong> и <strong>443</strong>. Направление трафика должно быть сквозным: внешний порт должен соответствовать внутреннему.</p>


<ol>

   <li> Откройте браузер на компьютере и зайдите в панель управления вашего роутера (<code>192.168.1.1</code> или <code>192.168.0.1</code>).</li>

   <li> Перейдите в раздел, отвечающий за перенаправление трафика и правила маршрутизации. В зависимости от производителя он называется:        

               <ul>

                <li><em>

    Переадресация -> Виртуальные серверы / Virtual Servers</em> (TP-Link)</li>

               <li><em> Сетевые правила -> Переадресация портов / Port Forwarding</em> (Keenetic)</li>

               <li><em> Интернет -> WAN -> Переадресация портов</em> (ASUS)</li>

           </ul>

           </li>

        <li>

    Создайте <strong>первое правило</strong> (для незашифрованного HTTP):        

                 <ul>

                  <li><strong>

      Имя правила:</strong> Любое понятное, например <code>Web HTTP</code></li>

                 <li><strong> Протокол:</strong> Укажите <code>TCP</code> (или TCP/UDP, если нет разделения)</li>

                 <li><strong> Внешний порт:</strong> <code>80</code></li>

                 <li><strong> Внутренний IP-адрес:</strong> Постоянный локальный IP вашего сервера (который мы зафиксировали в Главе 2, например <code>192.168.1.100</code>)</li>

                 <li><strong> Внутренний порт:</strong> <code>80</code></li>

             </ul>

             </li>

          <li>

      Создайте <strong>второе правило</strong> (для зашифрованного веб-трафика HTTPS):        

                   <ul>

                    <li><strong>

        Имя правила:</strong> Например, <code>Web HTTPS</code></li>

                   <li><strong> Протокол:</strong> Строго <code>TCP</code></li>

                   <li><strong> Внешний порт:</strong> <code>443</code></li>

                   <li><strong> Внутренний IP-адрес:</strong> IP вашего сервера (<code>192.168.1.100</code>)</li>

                   <li><strong> Внутренний порт:</strong> <code>443</code></li>

               </ul>

               </li>

            <li>

        Сохраните и примените настройки роутера.</li>

        </ol>



        <hr />


        <h2>

        3. Важное предупреждение о безопасности</h2>


        <p style="background-color: #fffbe6; padding: 15px; border-left: 5px solid #ffe58f; margin-top: 10px;"><strong>ВНИМАНИЕ:</strong> Никогда ради удобства не пробрасывайте наружу порт 22 (SSH), порты систем управления базами данных (вроде 3306 для MySQL или 5432 для PostgreSQL) или порт Samba/NFS шары. Боты-сканеры в интернете найдут их за считанные минуты и начнут подбирать пароли. <br /><br />



        Если вам нужен полноценный доступ к консоли сервера извне дома — используйте VPN (поднимите WireGuard или Tailscale) или, в крайнем случае, меняйте внешний порт SSH на нестандартный (например, открывайте снаружи порт 2222 и перенаправляйте его роутером на внутренний порт 22 сервера).</p>


        <p style="background-color: #f6ffed; padding: 15px; border-left: 5px solid #52c41a; margin-top: 20px;"><strong>Итог главы:</strong> Магистраль из глобального интернета до вашего сервера Debian теперь полностью открыта. Роутер знает, куда отправлять веб-трафик, когда к нему стучатся. Осталось сделать так, чтобы вместо безликих цифр внешнего IP-адреса п

        ользователи вводили красивое имя вашего личного домена.</p>