Macを新調&引越しでIPv6を利用するようになった
$ ssh xaver@192.168.3.22 -p 22 ssh: connect to host 192.168.3.22 port 22: Connection refused
ソフバン光でIPv6の申請をしてMacも新調したのであらためてsshの設定をするときに少してこずったので、その時の対応メモ
IPv6で繋がないようにする
ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 2c:4d:54:e8:fd:71 brd ff:ff:ff:ff:ff:ff inet 192.168.3.22/24 brd 192.168.3.255 scope global noprefixroute enp0s31f6 valid_lft forever preferred_lft forever inet6 fe80::2ed5:b660:2919:696a/64 scope link valid_lft forever preferred_lft forever
inet6とあるのでIPv6で動いてる
Ubuntuで速度いらないのと扱いやすくするために無効化する
参考
下記の3行を追記
% sudo vim /etc/sysctl.conf ... net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1 net.ipv6.conf.lo.disable_ipv6=1
これだけじゃシステムを再起動してたときに反映されなくなってしまうらしいので以下のファイルを作成
% sudo vim /etc/rc.local #!/bin/bash /etc/init.d/procps restart exit 0
パーミッションの変更
% sudo chmod 755 /etc/rc.local % sudo reboot
確認
% ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 2c:4d:54:e8:fd:71 brd ff:ff:ff:ff:ff:ff inet 192.168.3.22/24 brd 192.168.3.255 scope global noprefixroute enp0s31f6 valid_lft forever preferred_lft forever
ただまだssh用ポートだけ6になってる
% netstat -atn Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 192.168.3.22:35486 142.250.196.138:443 TIME_WAIT tcp 0 0 192.168.3.22:48606 35.82.112.36:443 ESTABLISHED tcp6 0 0 :::22 :::* LISTEN
ので設定する
% sudo vim /etc/ssh/sshd_config # What ports, IPs and protocols we listen for Port 22 # Use these options to restrict which interfaces/protocols sshd will bind to #ListenAddress :: # この行が有効化されていたのでコメントアウト ListenAddress 0.0.0.0 # この行がコメントアウトされていたので有効化
有効化
% service sshd restart
OK
% netstat -atn Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 192.168.3.22:60710 18.205.36.100:443 ESTABLISHED tcp 0 0 192.168.3.22:33390 172.217.175.3:443 ESTABLISHED tcp 0 0 192.168.3.22:36162 44.226.241.1:443 ESTABLISHED
あとは普通にSSHの設定するだけ