LINUX.ORG.RU

Сообщения ATidyDarty

 

nft / NAT / configs

Форум — Admin

Привет, начал изучать nftables, решил попрактиковаться, для практики создал себе подсетку со шлюзом на centos 8(с двумя сетевушками ens32(получает все по dhcp и смотрит в мою реальную сеть 192.168.57.0/24 c ip 192.168.57.36 ) и вторая сетевуха ens34 задал только ip 192.168.77.77 смотрит в сеть 192.168.77.0/24 ). Forward в /etc/sysctl.conf прописал.
Selinux вырубил, firewalld вырубил. Для практики решил разобраться в настройке NAT. Задачи следующие:
1) Чтобы все клиенты внутренней подсетки 77.0/24 транслировались через сетевуху 192.168.57.36 в сеть и 192.168.57.0/24 и имели доступ ко всем ее ресурсам в том числе и выход в интернет
2) С сетки 192.168.57.0 имели доступ только к одному ресурсу(http, https ,ssh) подсети 77.0 ( к примеру сайт с ip 192.168.77.111 )
Добавил только одно правило в nft

table ip nat {
        chain PREROUTING {
                type nat hook prerouting priority dstnat; policy accept;
        }

        chain INPUT {
                type nat hook input priority 100; policy accept;
        }

        chain POSTROUTING {
                type nat hook postrouting priority srcnat; policy accept;
                ip saddr 192.168.77.0/24 oif "ens32" snat to 192.168.57.36
        }

        chain OUTPUT {
                type nat hook output priority -100; policy accept;
        }
}


Все ресурсы 192.168.57.0 стали доступны для машинок сети 77.0/24. Сделал проброс icmp из сети 77.111 на 192.168.57.177 пакеты идут от отправителя 192.168.57.36(мой шлюз)
Вопросы возникли следующие:
1) Почему у меня адреса транслируются без заданного правила маскарадинга. Так как до этого я понимал принцип работы так: это правило

ip saddr 192.168.77.0/24 oif "ens32" snat to 192.168.57.36 
создает запись в таблице nat, а уже правило
nft add rule nat postrouting masquerade
делает магию трансляции ip по таблице nat. Если я не прав то объясните пожалуйста как это работает. Да и в общем правильно ли я все делаю ? 2) Не могу догнать как правильно сделать проброс из сети 192.168.57.0 к 192.168.77.111(сайт), у меня есть дефолтный шлюз 192.168.57.55 все пакеты сети 57.0/24 идут через него, я понимаю что на нем нужно сделать forward на 192.168.57.36 и прописать проброс на 192.168.77.77 -> 192.168.77.111. Вот только нигде в офф манах не могу найти примеры с маршрутизацией.
Так же хочу сказать что с netfilter и iptables раньше никогда дела не имел так что не бросайте камни, а помогите разобраться новичку. Кто не жадный можете пожалуйста поделиться своими конфигами с настройками nft для разбора, так как в офф манах все очень поверхностное без объяснений реализации, да и в целом далеко от реальных проектов.

 , ,

ATidyDarty
()

Настройка второго сетевого адаптера Centos 8 (виртуалка VMware)

Форум — Admin

Здравствуйте, возникла проблема с добавлением второй сетевушки на centos 8. Использую виртуалку vmWare vsphere client. Добавил новый адаптер через vmware, (до этого там был только один адаптер). Адаптер добавился, перезагрузил виртуалку(все прошло без ошибок).
ifconfig показал следующее:
Старый сетевой адаптер(получает ip по dhcp)

 ens32: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.57.36  netmask 255.255.255.0  broadcast 192.168.57.255
        inet6 fe80::b2dc:a670:7f3a:dfc1  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:60:aa:9b  txqueuelen 1000  (Ethernet)


Новый, который я добавил(получил дефолтные настройки, так же dhcp)
 ens34: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.57.113  netmask 255.255.255.0  broadcast 192.168.57.255
        inet6 fe80::4de7:64e0:9211:3ac8  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:60:aa:a5  txqueuelen 1000  (Ethernet)

Ip пропинговал, даже проверил smb по новой сетевушке, все работает отлично.

Однако в /etc/sysconfig/network-scripts/ есть файл только старого адаптера ifcfg-ens32, конфиг нового адаптера не появился (я так понял он сам и не должен там появляться), добавил его вручную

cp ifcfg-ens32 ifcfg-ens34
В ifcfg-ens34 прописал статику, задал ip, шлюз имя device и пр.
параметры конфигов
ifcfg-ens32

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens32"
UUID="b5274cab-74a8-4c11-970f-f9fdc9c3ca9a"
DEVICE="ens32"
ONBOOT="yes"
IPV6_PRIVACY="no"


ifcfg-ens34

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
IPADDR0=192.168.57.238
PREFIX0=24
GATEWAY0=192.168.57.55
DNS0=192.168.57.4
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens32"
UUID="b5274cab-74a8-4c11-970f-f9fdc9c3ca9a"
DEVICE="ens34"
ONBOOT="yes"
IPV6_PRIVACY="no"

Перезагрузил систему и получилось так что у меня статику начал получать ens-32 а не ens-34. Новый адаптер так же получает ip по dhcp, можете объяснить в чем может быть причина ? А так же можете сказать какие еще юниты отвечают за пересчитывание конфигов в /etc/sysconfig/networks-scripts ? Так как systemctl restart NetworkManager не сработал (после того как я добавил статику в новый конфиг ens-34),сработало только после ребута.

 

ATidyDarty
()

RSS подписка на новые темы