Linode で Gentoo 2008.0 を使ってみる 06
SSH の設定を行う。
# vi /etc/ssh/sshd_config
変更前
#Port 22
PermitRootLogin no
UsePAM yes
変更後
Port 32768 # ポート番号は任意の番号に変更する PermitRootLogin yes # 鍵交換式のログインを選択する場合は no のままにする UsePAM no # PAM の認証は行わないので、no にする # SSH のログインを許可するユーザー名を記述 AllowUsers littlebuddha # 複数名の場合は半角スペースを空けて記入する
SSH がデーモンとして登録されているかを確認する
# rc-update show | grep ssh sshd | default
変更した設定を読み込む
# /etc/init.d/sshd reload
* Reloading sshd ...
No /usr/sbin/sshd found running; none killed. [ ok ]
トラブル
今回は /etc/init.d/sshd reload としたが、ポート番号が 22 から変更した任意の番号に適用されなかった。
# netstat -lnptu Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3904/sshd tcp6 0 0 :::22 :::* LISTEN 3904/sshd
netstat で確認をしても、22番のままだった。
/etc/init.d/sshd restart とすると、エラーステータスが戻ってきて、sshd の再起動ができなかった。
最終的には、
を行ってログインをしたところ、先ほど変更した箇所が有効になった sshd が起動していた。原因がわからないまま、再度 iptabels と sshd の設定を変更して保存して、SSH のログインができることを確認した。
/etc/services で sshd のポート番号を変更しても、反映されなかった。
最悪の場合、root でも一般ユーザーでもログインができなくなる可能性があったので、怖かった。
現在は、SSH が意図通りに動作していることを確認済み。
% sudo netstat -lnptu Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:32768 0.0.0.0:* LISTEN 4131/sshd tcp6 0 0 :::32768 :::* LISTEN 4131/sshd udp 0 0 0.0.0.0:68 0.0.0.0:* 3083/dhcpcd