Ubuntu はやめて CentOS6 でやってみることにした。こっちは「標準OSインストール」でインストールしてもちゃんとログインできる。
ssh でログインしたら、まずは yum update
。
[root@tk2-254-36564 ~]# yum update 読み込んだプラグイン:fastestmirror, security 更新処理の設定をしています Loading mirror speeds from cached hostfile * base: www.ftp.ne.jp * epel: ftp.riken.jp * extras: www.ftp.ne.jp * updates: www.ftp.ne.jp 更新と設定されたパッケージがありません。
特に必要なかったみたいだ。
作業用のユーザーの作成。
[root@tk2-254-36564 ~]# useradd takatoh [root@tk2-254-36564 ~]# passwd takatoh ユーザー takatoh のパスワードを変更。 新しいパスワード: 新しいパスワードを再入力してください: passwd: 全ての認証トークンが正しく更新できました。 [root@tk2-254-36564 ~]# usermod -G wheel takatoh
wheel グループに sudo
する権利をつける。visudo
コマンドで開いたファイルの次の行をアンコメントする。
%wheel ALL=(ALL) ALL
いったんログアウトして、新しく作ったユーザーでログイン。
takatoh@envelopes $ ssh [email protected] [email protected]'s password: SAKURA Internet [Virtual Private Server SERVICE]
パスワード認証をやめて、公開鍵での認証に切り替える。公開鍵を配置。
[takatoh@tk2-254-36564 ~]$ mkdir .ssh [takatoh@tk2-254-36564 ~]$ chmod 700 .ssh [takatoh@tk2-254-36564 ~]$ cd .ssh [takatoh@tk2-254-36564 .ssh]$ wget -O authorized_keys https://github.com/takatoh.keys --2017-05-04 16:29:25-- https://github.com/takatoh.keys github.com をDNSに問いあわせています... 192.30.255.113, 192.30.255.112 github.com|192.30.255.113|:443 に接続しています... 接続しました。 HTTP による接続要求を送信しました、応答を待っています... 200 OK 長さ: 特定できません [text/plain] `authorized_keys' に保存中 [ <=> ] 381 --.-K/s 時間 0.003s 2017-05-04 16:29:26 (136 KB/s) - `authorized_keys' へ保存終了 [381] [takatoh@tk2-254-36564 .ssh]$ chmod 600 authorized_keys [takatoh@tk2-254-36564 .ssh]$ ls -al 合計 12 drwx------ 2 takatoh takatoh 4096 5月 4 16:29 2017 . drwx------ 3 takatoh takatoh 4096 5月 4 16:28 2017 .. -rw------- 1 takatoh takatoh 381 5月 4 16:29 2017 authorized_keys
もう一度ログアウトして、公開鍵認証ができるか試してみる。
[takatoh@tk2-254-36564 .ssh]$ exit logout Connection to 160.16.224.68 closed. takatoh@envelopes $ ssh [email protected] Last login: Thu May 4 16:27:31 2017 from fntsitm001026.sitm.fnt.ngn.ppp.infoweb.ne.jp SAKURA Internet [Virtual Private Server SERVICE]
大丈夫みたいだ。
それじゃつぎは ssh の設定。編集するのは /etc/ssh/sshd_config ファイルの3箇所。
Port 60000
PasswordAuthentication no
PermitRootLogin no
それぞれ、ポートの変更、パスワード認証の禁止、root でのログイン禁止。
設定を反映するために sshd をリスタート。
[takatoh@tk2-254-36564 ~]$ sudo service sshd restart [sudo] password for takatoh: Stopping sshd: [ OK ] Starting sshd: [ OK ]
そしてファイアウォールの設定。/etc/sysconfig/iptables ファイルをつぎのように編集。
# Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 60000 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT
4,5 行目は ACCEPT を DROP に変更、10行目はポート番号を変更。で、これを反映。
[takatoh@tk2-254-36564 ~]$ sudo service iptables start
再びログアウトして、ちゃんと新しいポートでログインできるか試してみる。
takatoh@envelopes $ ssh -p 60000 [email protected] Last login: Thu May 4 17:00:05 2017 from fntsitm001026.sitm.fnt.ngn.ppp.infoweb.ne.jp SAKURA Internet [Virtual Private Server SERVICE]
OK。ここでいったん休憩。