Używam Ubuntu 10.4 i próbowałem wyłączyć IPv6, ponieważ obecnie go nie potrzebuję. Randam następujące, aby wyłączyć IPv6, a następnie ponownie uruchomiłem serwer:
echo "#disable ipv6" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.all.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.lo.disable_ipv6 = 1" | sudo tee -a /etc/sysctl.conf
Po ponownym uruchomieniu widzę, że IPv & jest wyłączany przez uruchomienie:
cat /proc/sys/net/ipv6/conf/all/disable_ipv6
Po uruchomieniu netstat -antlp
widzę, że większość aplikacji IPv6 została zamknięta, ale SSHd nadal działa:
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:9090 0.0.0.0:* LISTEN 663/java
tcp 0 0 0.0.0.0:9091 0.0.0.0:* LISTEN 663/java
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 684/apache2
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 513/sshd
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 605/postgres
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 684/apache2
tcp6 0 0 :::22 :::* LISTEN 513/sshd
Jak mogę zamknąć demona SSH na porcie 22 IPv6?
Dzięki.
/etc/ssh/sshd_config
wydają się być domyślnie skomentowane. Czy mogę po prostuListenAddress 0.0.0.0
anulować komentarz i ponownie uruchomić dysk SSHd?Trafiłem na tę stronę, zanim odkryłem odpowiedź tutaj: https://unix.stackexchange.com/a/126793/353061
Reposting: Domyślnie
sshd
używa ipv4 i ipv6. Możesz skonfigurować protokół, którego używa sshd poprzezAddressFamily
dyrektywę w/etc/ssh/sshd_config
Dla ipv4 i ipv6 (domyślnie)
Tylko dla ipv4
Tylko dla ipv6
Po wprowadzeniu jakichkolwiek zmian należy je
sshd_config
zrestartować,sshd
aby zmiany zostały wprowadzone.Ponadto oto jak możesz to zrobić w sed:
I uruchom ponownie sshd:
źródło
Podejrzewam, że wiąże się z 0.0.0.0 i ::, ale jeśli IPv6 jest wyłączony na interfejsie, nie będzie akceptować połączeń na tym interfejsie. Czy próbowałeś połączyć się przez wyłączone interfejsy IPv6?
źródło