こんにちは、えんぞーです。
最近 GMO の VPS を借りたので最初に設定した基本的な事をメモ程度に書いておこうかと思います。
公私ともに色々な所の VPS にお世話になっていますが GMO は初めてです。
環境は GMO VPS(マイクロ)で OS は CentOS6.2 になりますが、CentOS であればさくら VPS であっても同じだと思います。
サーバーの設定は色々有りすぎて最初にする事だけに絞っても全てを網羅できないので普遍的に行うと思う部分を最低限のセキュリティ対策として 6 つピックアップしました。
最低限のセキュリティ対策
サーバー会社から与えられたパスを使ってそのまま作業するのは今一つ気持ちよくないのでその当たりからサクッと変更していきます。
root ユーザーのパス変更
一番重要なパスワードなので一番最初に変えてしまいます。
#rootのパスワードを変更
passwd root
作業ユーザーの作成
root ユーザーで全て操作していくのは色々と問題あるので普段使うユーザーを作成して sudo で必要に応じて管理者権限で作業出来るようにします。
#ユーザーの追加
useradd hoge
#追加したユーザーのパスワードを設定する
passwd hoge
sudo の設定
作成したユーザーを Wheel グループに追加して sudo が使える様にします。
#ユーザーをwheelグループに追加
usermod -G wheel hoge
#次に下記のコマンドでsudoの設定ファイルを開きます
visudo
#開いたら下記の様にコメントアウトを外します。
## Allows people in group wheel to run all commands
#%wheel ALL=(ALL) ALL
↓
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
私は気休め程度に sudo 時にはパスワードを要求する様にしていますがパスワード無しにしたいのであれば下記の様にして下さい。
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
↓
## Same thing without a password
%wheel ALL=(ALL) NOPASSWD: ALL
SSH 関連の設定
SSH にそのまま root ユーザーがログイン出来ない様にします。 ついでに接続ポートも変更します。
#編集するファイルを開く
vi /etc/ssh/sshd_config
#rootユーザーのログイン禁止
#PermitRootLogin yes
↓
PermitRootLogin no
#接続ポートの変更
#Port 22
↓
Port 10022
iptables のポートも変更
sshd のポートを変更したので iptables のポートも合わせて変更します。
#変更するファイル
vi /etc/sysconfig/iptables
#ポート番号を変更(sshdで変更したポート番号と合わせて下さい)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
↓
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10022 -j ACCEPT
ついでに iptables の自動起動設定も行っておきます。
完了したら各サーバーを再起動しましょう。
#自動起動ON
chkconfig iptables on
#sshdとiptablesをそれぞれ再起動
/etc/init.d/sshd restart
/etc/init.d/iptables restart
正常に再起動出来たら別のウィンドウでクライアントを立ち上げてログイン出来るかテストしてみます。
作成したユーザーでログインし、sudo コマンドでルート権限持てるかテスト。
ログイン出来ない場合は何かしら間違っているので最初に立ち上げてあるクライアントで修正して確認。
※誤って元々作業しているクライアントを閉じてしまいログイン出来なくなった場合はサーバーの管理画面に行き、VPS コンソールから修正してください。
サーバーのアップデート
最初にやってしまった方が良いかと思いますが、ここでアップデートしておきます。
#アップデート
yum update
確認
# cat /etc/redhat-release
CentOS release 6.6 (Final)
アップデートして CentOS6.2 から 6.6 になりました。
とりとめのないまとめ
これで基本的な設定は完了です。
人によってはもっと細かい所まで設定するとは思いますが、私は一先ずここまでにしてあとは気づいたときに追加・修正していきます。
間違っていたりこうした方が良いという部分ありましたら教えて下さい^^