GNU/Linux >> Znalost Linux >  >> Cent OS

Jak zakázat IPv6 v CentOS/RHEL 8

Ve výchozím nastavení je protokol IPv6 povolen na systémech CentOS/RHEL 8. V určitých situacích však mohou někteří uživatelé považovat za žádoucí vypnout podporu IPv6. Tento příspěvek popisuje kroky k deaktivaci ipv6 na systému CentOS/RHEL 8.

Pro systémy používající NetworkManager

U všech systémů, které používají NetworkManager, musí být protokol IPv6 zakázán na každém rozhraní pomocí možnosti ipv6.method nastavit na deaktivováno . Tento krok je nutné provést navíc k deaktivaci IPv6 pomocí metody uvedené v další části níže.

# nmcli connection modify [Connection Name] ipv6.method "disabled"

Metoda 1:Použití GRUB2

1. Zakažte modul vestavěného jádra ipv6. Upravte /etc/default/grub a připojte ipv6.disable=1 na GRUB_CMDLINE_LINUX jak je uvedeno níže:

GRUB_CMDLINE_LINUX="rd.lvm.lv=rhel/swap crashkernel=auto rd.lvm.lv=rhel/root ipv6.disable=1"

2. Spusťte grub2-mkconfig příkaz k regeneraci souboru grub.cfg:

# grub2-mkconfig -o /boot/grub2/grub.cfg

Případně na systémech UEFI spusťte následující:

# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

3. Restartováním systému zakažte podporu IPv6.

# systemctl reboot

Metoda 2:Použití sysctl

Alternativně to lze provést také prostřednictvím nastavení sysctl. Uvědomte si prosím, že to přeruší SSH Xforwarding, pokud sshd_config neobsahuje AddressFamily inet.

1. Vytvořte nový soubor s názvem /etc/sysctl.d/ipv6.conf a přidejte následující možnosti:

# vi /etc/sysctl.d/ipv6.conf
# First, disable for all interfaces
net.ipv6.conf.all.disable_ipv6 = 1
# If using the sysctl method, the protocol must be disabled all specific interfaces as well. 
net.ipv6.conf..disable_ipv6 = 1

2. Nová nastavení by pak bylo třeba znovu načíst pomocí:

# sysctl -p /etc/sysctl.d/ipv6.conf

3. Před provedením jakýchkoli změn v initramfs vytvořte zálohu:

# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m-%d-%H%M%S).img

4. Poté znovu vytvořte počáteční obraz disku RAM pomocí:

# dracut -f -v

5. Ověření zahrnutí souboru:

# lsinitrd /boot/initramfs-[version].img  | grep 'etc/sysctl.d/ipv6.conf'

6. Zakomentujte všechny adresy IPv6 nalezené v /etc/hosts, včetně adresy ::1 localhost. Před provedením jakýchkoli změn vytvořte zálohu souboru:

# cp -p /etc/hosts /etc/hosts.disableipv6
# sed -i 's/^[[:space:]]*::/#::/' /etc/hosts

Ověření

1. Aktuální stav možnosti deaktivace modulu ipv6 lze zobrazit pomocí sysfs:

# cat /sys/module/ipv6/parameters/disable
1

2. Aktuální stav sysctl disable_ipv6 lze zobrazit pomocí příkazu sysctl:

# sysctl -a 2>/dev/null | grep disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.eth0.disable_ipv6 = 0

3. Seznam všech adres IPv6 přiřazených systému:

# ip -6 addr

4. Chcete-li vypsat jakékoli sokety IPv6 TCP nebo UDP, můžete použít něco jako následující:

# ss -6 -pan

Závěr

V případě, že si při použití metody 1 (GRUB2 všimnete jakékoli zprávy Selinux denied v souboru audit.log, jako je avc:denied { module_request }), pak deaktivujte ipv6 ze souboru /etc/sysctl.d/ipv6.conf, jak je uvedeno v Metoda 2. Chcete-li po zakázání ipv6 zabránit výstupu zpráv rpc*, upravte /etc/netconfig pro řádky začínající udp6 a tcp6; změňte „v“ ve třetím sloupci na „-“ (pomlčka/pomlčka).

Jak povolit IPv6 v CentOS/RHEL 8


Cent OS
  1. Jak zakázat IPv6 na CentOS / RHEL 7

  2. CentOS / RHEL 7 :Jak zakázat IPv6 pouze na konkrétním rozhraní

  3. Jak zakázat NUMA v CentOS / RHEL 6,7

  1. Jak povolit IPv6 na CentOS / RHEL 6

  2. Jak deaktivovat režim FIPS na CentOS/RHEL 7

  3. CentOS / RHEL 6 :Jak zakázat službu telnet

  1. Jak deaktivovat NetworkManager na CentOS / RHEL 7

  2. Jak povolit IPv6 na CentOS / RHEL 7

  3. Jak zakázat IPv6 na CentOS / RHEL 5