さくらのVPSを設定して、Wordpressをインストールして、検索サイトに登録された次に来るのはハッカーだった。

WordPressの記事をWordpressに書くと、もれなく何処からともなく、ログインしようとしてくる奴らが集まってくる。

ログファイルには、phpの脆弱性を狙った攻撃の痕跡が。

自分の家の中のローカル環境ではごまかしが効いても、外では効かない。外は世紀末状態だ

”彼ら”に対する最初の対策はなんだろうか。

まず、家からVPSにリモートアクセスしなければならない以上、SSHを利用しなければならないだろう。

侵入者はroot、admin、guestのユーザー名で最初にアクセスしようと狙ってくる。ここでパスワードが六文字以内だったり、辞書に乗っているような単語だったり、以下の様な”2012年度最悪パスワード”だったら、小学生にでも簡単にハック出来る。


 password 
 123456 
 12345678 
 abc123 
 qwerty 
 monkey 
 letmein 
 dragon 
111111 
 baseball 
 iloveyou 
 trustno1 
 1234567 
 sunshine 
 master 
123123 
 welcome 
 shadow 
 ashley 
 football 
 jesus 
 michael 
 ninja 
 mustang 
 password1 



その他にも、英語、日本語に関わらず、辞書に載ってる単語、固有名詞、二つの単語を連結したもの、apple123のようなに前後に数字を付け加えたものも簡単にテストされ突破されてしまう。

個人情報が漏洩した場合は、郵便番号、電話番号、誕生日、ナンバープレートなども危ない。

ちょっとひねったつもりの、aを@とかoを0、bを6にしたり、逆スペルにしてもツールで突破されてしまう。

sshへの辞書攻撃の例



10分頃から辞書攻撃でサイトのログインパスワード見つける実践




一つ目の対策としてはパスワードの強度テスト等のサービスを使って、普通以下のパスワードの使用を避けなければならい。

さくらのVPSで最初にしなければならないのは、初回起動の場合、rootのパスワード変更をして、サーバーを守らなければならない。

[root@centos ~]# passwd
ユーザー root のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:
passwd: 全ての認証トークンが正しく更新できました。

次にSSHの設定が必要になる。

通常はSSHは鍵方式にして、接続と、通信内容両方をまもらなければならない。

鍵方式とは、秘密鍵と公開鍵という二つのペアの鍵を作り出し、秘密鍵は自分だけが保持し、公開鍵をリモートのサーバー等暗号化して通信したいところに置くものである。

例えるなら、鍵のかけ方は公開するが、開けるほうの鍵は自分しか持たないということ。

CentOSにユーザーを追加

[root@centos ~]# useradd ken                           ←kenというユーザーを追加
[root@centos ~]# passwd ken              ←kenのログインパスワードを設定 
ユーザー ken のパスワードを変更。
新しいパスワード:                   ←十分な強度のパスワード入力
新しいパスワードを再入力してください:         ←再入力
passwd: 全ての認証トークンが正しく更新できました。
[root@centos ~]#


公開鍵保存ディレクトリ作成

[ken@centos ~]$ mkdir .ssh        ←kenのホームディレクトリに.sshというディレクトリを追加。このディレクトリ内に
                      authorized_keysという名前で公開鍵を保存。
sshがデフォルトでこれを公開鍵ファイ                       ルとみなして読みに来るため

[ken@centos ~]$ chmod 700 .ssh      ←.sshディレクトリはkenだけが全てのアクセスを出来るようにする

tera termでの鍵生成 

鍵生成をクリックして、パスフレーズを入力して、公開鍵と秘密鍵両方を、保存する。
id_rsa が秘密鍵 id_rsa.pubが公開鍵




tera term上にid_rsa.pubをドラッグアンドドロップすればホームディレクトリに送信できるのでそれを.ssh配下にauthorized_keysというファイル名でコピーする。



[ken@centos ~]$ cp id_rsa.pub .ssh/authorized_keys

[ken@centos ~]$ rm id_rsa.pub             ←これはもういらないので削除

[ken@centos ~]$ chmod 600 .ssh/authorized_keys     

sshdの設定ファイルを編集する

[root@centos ~]# vim /etc/ssh/sshd_config          


Port 22
Port (65535までの任意の番号) ←22だと攻撃対象になりやすいので変更


#PermitRootLogin yes


PermitRootLogin no ← rooでのログインを禁止

#PasswordAuthentication yes

PasswordAuthentication no ← パスワードでのログインを禁止(鍵方式によるログインのみ許可)

#PermitEmptyPasswords no

PermitEmptyPasswords no ← パスワードなしでのログインを禁止
sshdの再起動

[root@centos ~]# service sshd restart
sshd を停止中:                                             [  OK  ]
sshd を起動中:                                             [  OK  ]
[root@centos ~]#