Настройка NAT и маршрутизации в Red Hat9 Linux

Настройка NAT и маршрутизации в Red Hat9 LinuxНастроить Linux в роли маршрутизатора — это как научить кота приносить тапочки: вроде и просто, но без правильного подхода можно остаться и без тапочек, и без интернета. Сегодня мы разберёмся, как сделать из вашего Linux-сервера настоящего интернет-шлюза с помощью трёх волшебных слов: nmtui, sysctl и nftables. Ну что, поехали!

Начнём с nmtui — это такой текстовый интерфейс для настройки сети, который напоминает старый добрый DOS-менюшник, только современный и не такой страшный. Запускаете команду `nmtui`, и перед вами появляется уютное окно, где можно назначать IP-адреса, переименовывать интерфейсы (да-да, вы не ослышались — можно назвать их как угодно! ens160 превратить в «Интернет», а ens192 — в «Локалку»). Тут главное не перепутать внешнюю сетевую карту с внутренней, иначе вместо доступа в интернет получите доступ к загадочным мирам локальной сети… где вас никто не ждёт.

Вот представьте: вы настраиваете ens160 на выход в интернет, а ens192 — для домашних устройств. Это примерно как дать одному другу ключ от своей квартиры (интернет), а другому — от кладовки (локальная сеть). Если перепутать ключи — придётся объяснять соседям, почему у вас вдруг дома чужие гости.

После того как вы настроили интерфейсы через nmtui (и почувствовали себя сетевым волшебником), стоит обновить оболочку командой `exec bash`. Зачем? Чтобы новые настройки сети применились сразу же. Это похоже на то, как если бы вы после смены пароля перезагрузили компьютер: всё заработает гладко и без сюрпризов.

Теперь самое важное — включаем IP-переадресацию через файл `/etc/sysctl.conf`. Добавляем туда строку `net.ipv4.ip_forward = 1` — это как сказать вашему серверу: «Слушай, дружище, теперь ты будешь пересылать пакеты между сетями!» Без этого шага ваш Linux останется тихим наблюдателем: пакеты будут приходить и уходить мимо него. А с включённой переадресацией он превращается в настоящего роутера-героя.

Если вы думаете, что настройка сети закончилась на этом этапе – спешу разочаровать! Теперь нам нужен NAT или маскарадинг. Представьте себе вечеринку: ваши друзья из локальной сети хотят выйти в большой мир интернета через одного представителя — вашего сервера. Но чтобы никто не заподозрил массового нашествия маленьких пакетов с разных адресов внутри вашей квартиры, сервер маскирует их под свой собственный IP. Для этого используется nftables – современный защитник порядка в мире пакетов.

Создаём файл конфигурации `/etc/nftables/my_nat.nft` с магической формулой:

«`
table inet nat {
chain POSTROUTING {
type nat hook postrouting priority srcnat;
oifname «ens160» masquerade
}
}
«`

Звучит сложно? Не переживайте! Это примерно как поставить охранника у двери с инструкцией: «Пропускай всех гостей только если они идут наружу через дверь ens160». И при этом меняй им бейджики на свои – чтобы никто из интернета не догадался о тайных адресах ваших друзей.

Дальше подключаем эту конфигурацию в основной файл `/etc/sysconfig/nftables.conf`, убираем комментарий и меняем путь на наш новый файл. Это похоже на то, как если бы вы заменили старую записку «Вход запрещён» новой табличкой «Добро пожаловать!» – теперь nftables знает куда смотреть за порядком.

Чтобы всё заработало сразу и автоматически при загрузке системы запускаем `systemctl enable —now nftables`. Эта команда включает службу nftables и запускает её немедленно – словно нажать кнопку «Пуск» на вашем любимом игровом автомате.