Pandora Pocket

IT系と日常系の備忘録。三日坊主。

我ながら飽きっぽいというか、何というかだけども、SaaSesでコントロールパネルからOSの再インストールができるようになったので真っ新にしてみた。

ついでにCentOSからUbuntuにOSを変えて、改めてサーバーを構築してみる。

とりあえず注意事項。

前回の記事ではWebminを多用していたけど、だんだん面倒になってきたので基本的にWebminを利用せずコンソールで行うことにする。

今回のサーバーは前回と同じく、FTPサーバ、メールサーバは構築せず、あくまでウェブサーバーのみとする。

メールはGoogle Appsを使った方が安心だし、FTPサーバはSSHサーバーでSCPを利用した方が安全なので。

また、普通Ubuntuならrootを利用せずsudoを利用するのが定石だけれど(非推奨とされてる)、いちいちsudoするのが面倒なので今回はroot権限に昇格した上で作業をした。

万が一にもこの記事を参考にする人がいたらその辺りは気をつけていただければ。

新規に契約した場合はメールに添付、初期化した場合はコントロールパネルから入手できるPDFファイルに載っている通常ユーザーでログインする。

rootに昇格するには

su -

と打ち込み、ルートのパスワードを入力すればいい。とはいっても最初はrootにパスワードが指定されていないので、

sudo su -
passwd

でrootパスワードを指定する必要がある、かも。

rootに昇格したらまずは新しいユーザーの作成を行う。

SaaSesのVPSの場合最初からあるユーザーは契約者の名字を利用しているので何となく嫌だ・・・。

今回はhogeuserという名前のユーザーを作る。このユーザーのみroot権限昇格可能とする。

useradd -g adm hogeuser //ユーザーの作成(+admグループに追加)
passwd hogeuser //パスワード設定

group設定

次にroot昇格可能なグループを設定する。

vi /etc/pam.d/su

# auth required pam_wheel.so
↓
auth required pam_wheel.so group=adm

これでadmグループに所属するユーザーのみがrootに昇格できるようになる。

SSH設定

次にSSH関連の設定を行う。

まずは一定量の攻撃があった場合防御してくれるdenyhostをインストール。

aptitude update
aptitude install -y denyhosts

denyhostの設定

vi /etc/denyhosts.conf

PURGE_DENY =
↓(引っかかった場合の制限時間)
PURGE_DENY =3h  //3時間で解除

DENY_THRESHOLD_INVALID = 5
↓(存在しないユーザーへのログインを拒否するまでの回数)
DENY_THRESHOLD_INVALID = 2

DENY_THRESHOLD_VALID = 10
↓(存在するユーザーへのログインを拒否するまでの回数)
DENY_THRESHOLD_VALID = 5

次に自分がdenyhostに引っかからないよう設定

vi /etc/hosts.allow

ALL:自分のIPアドレス

また、狙われやすいSSHサーバのデフォルトポートを変更しておくとより安全になる。

vi /etc/ssh/sshd_config

Port 22
↓(SSHサーバのポート変更)
Port 2222

iptables変更

やり方がよくわからなかったので直接編集した。危険なのであまりおすすめしないかも。

vi /etc/iptables.up.rules

-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
↓
-A INPUT -p tcp -m tcp --dport 2222 -j ACCEPT

以下を実行

iptables-restore < /etc/iptables.up.rules //iptablesの設定ファイルに書かれた内容を反映
/etc/init.d/ssh restart  //SSHサーバの再起動

次の記事へ続く。