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

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

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


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

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

  •    
  • Порт 80 (HTTP) — стандартный порт для обычного, незашифрованного веб-трафика. Через него веб-серверы начинают общение с браузерами.
  •    
  • Порт 443 (HTTPS) — стандартный порт для защищенного, зашифрованного веб-трафика. Именно через него в итоге будет работать наш безопасный BookStack.

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


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

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

  1.    
  2. Откройте браузер на компьютере и зайдите в панель управления вашего роутера (192.168.1.1 или 192.168.0.1).
  3.    
  4. Перейдите в раздел, отвечающий за перенаправление трафика и правила маршрутизации. В зависимости от производителя он называется:        
    •            
    • Переадресация -> Виртуальные серверы / Virtual Servers (TP-Link)
    •            
    • Сетевые правила -> Переадресация портов / Port Forwarding (Keenetic)
    •            
    • Интернет -> WAN -> Переадресация портов (ASUS)
    •        
       
  5.    
  6. Создайте первое правило (для незашифрованного HTTP):        
    •            
    • Имя правила: Любое понятное, например Web HTTP
    •            
    • Протокол: Укажите TCP (или TCP/UDP, если нет разделения)
    •            
    • Внешний порт: 80
    •            
    • Внутренний IP-адрес: Постоянный локальный IP вашего сервера (который мы зафиксировали в Главе 2, например 192.168.1.100)
    •            
    • Внутренний порт: 80
    •        
       
  7.    
  8. Создайте второе правило (для зашифрованного веб-трафика HTTPS):        
    •            
    • Имя правила: Например, Web HTTPS
    •            
    • Протокол: Строго TCP
    •            
    • Внешний порт: 443
    •            
    • Внутренний IP-адрес: IP вашего сервера (192.168.1.100)
    •            
    • Внутренний порт: 443
    •        
       
  9.    
  10. Сохраните и примените настройки роутера.

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

ВНИМАНИЕ: Никогда ради удобства не пробрасывайте наружу порт 22 (SSH), порты систем управления базами данных (вроде 3306 для MySQL или 5432 для PostgreSQL) или порт Samba/NFS шары. Боты-сканеры в интернете найдут их за считанные минуты и начнут подбирать пароли.

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

Итог главы: Магистраль из глобального интернета до вашего сервера Debian теперь полностью открыта. Роутер знает, куда отправлять веб-трафик, когда к нему стучатся. Осталось сделать так, чтобы вместо безликих цифр внешнего IP-адреса п ользователи вводили красивое имя вашего личного домена.