- 追加された行はこの色です。
- 削除された行はこの色です。
[[FrontPage]]
#contents
2011/09/18からのアクセス回数 &counter;
CMS(コンテンツサーバ)の各記事にふさわしい広告を表示する実験と
Sageの公開サーバを構築するために、さくらのVPSを使うことにしました。
ここでは、VPSの申し込み直後から最低限必要な設定
- 管理ユーザアカウントの作成
- SSHの設定
- IPTables(ファイアーウォール)の設定
- Apacheの設定
- MySQLの設定
- PHPの設定
方法を紹介します。
** さくらコントロールパネル [#wafc7333]
さくらのVPSを申し込むと、「さくらコントロールパネル」のURLとIPアドレス、パスワードが送られてきます。
VPSの初期画面は以下のようなものです。
&ref(さくらVPSコントロールパネル.png);
何の準備もなく、いきなりサーバを起動するのは危険です。
必要最低限のセキュリティ対策を整えてからはじめましょう。
** テンプレートの必要性 [#gc443693]
少し調べて見ましたが、さくらのサイトには、VPSサーバ構築の情報は提供されていませんでした。
ユーザが何の対処もしないでVPSサーバを起動した場合、セキュリティーの甘いサーバが多数現れることが予想されるため、サーバテンプレートを提供する等の策を講じたが良いと思われます。
Googleで検索したところ、色々な方がさくらのVPSの構築方法を紹介されていますが、
ここでは、独断と偏見で参考になるサイトを紹介し、私の取った設定方法について、
説明します。
ここでは、独断と偏見で参考になるサイトを紹介し、私の取った設定方法について説明します。
参考にしたサイト、
- 樋口 彰久氏の
[[さくらVPSでWebサーバを構築するテンプレ>http://www.unlimited-extreme.com/akihisa.higuchi/development/sakura-vps-web-server.html]]
- cross cloverの
[[[さくらのVPS] サーバ移行戦記 (2)>http://www.cross-clover.cc/memo/archives/2010/09/server-move-2.html]]、
[[サーバ移行戦記 (3)>http://www.cross-clover.cc/memo/archives/2010/09/server-move-3.html]]
- jitsu102の日記の
[[さくらVPSサーバの初期設定いろいろ>http://d.hatena.ne.jp/jitsu102/20110417/1303050903]]
です。
** 管理者アカウントの作成 [#need3c8d]
「さくらコントロールパネル」「起動」ボタンを押して、サーバを起動します。
続いて、「リモートコンソール」ボタンを押して、リモートコンソールを表示します。
改行キーを押すとloginプロンプトが表示されますので、rootとさくらから送られたパスワードを入力します。
&ref(remote_console.png);
*** rootパスワードの変更 [#ad1c6d16]
最初にrootのパスワードを自分の覚えやすいものに変更します。
#pre{{
# passwd
}}
*** 管理者アカウントの作成 [#sa3ff185]
インターネットと直接つながったサーバなので、
- rootでのログインは、リモートコンソールに限定する
- 管理者は、suコマンドを使用しようしないで、すべてsudoコマンドを使用する
ことを原則します。
まず、管理者用のアカウントを作成します。
#pre{{
# useradd 管理者アカウント
# passwd 管理者アカウント
}}
suコマンドの使用をwheelグループに限定します。
#pre{{
# cp /etc/pam.d/su /etc/pam.d/su.org
# vi /etc/pam.d/su
以下の行のコメント(#)を外す
# auth required pam_wheel.so use_uid
}}
これで、wheelグループ以外のユーザがsuコマンドを使用すると
#pre{{
$ su
su: incorrect password
}}
のエラーが表示され、suコマンドが使えなくなります。
どうしても管理者アカウントにsuコマンドの使用を許したい場合には、
#pre{{
# usermod -G wheel 管理者アカウント
}}
としてください。
*** sudoの設定 [#m5f58300]
管理者にsudoコマンドの使用を許可するために以下の行を追加します。
#pre{{
# visudo
管理者アカウント ALL=(ALL) ALL
}}
これで、管理者アカウントの設定は完了です。rootアカウントをログアウトし、管理者アカウントでログインします。
** SSHの設定 [#ka7543f8]
SSHの設定ポリシーは、
- SSHでのrootログインを許可しない
- パスワード認証を許可しない
- RSA認証のみを許可する
とします。
まず、管理者アカウントにSSH用のディレクトリを作成します。
#pre{{
$ mkdir .ssh
}}
*** クライアントの公開鍵の転送 [#eeaa970b]
クライアント側のホームディレクトリに.sshが存在しない場合、
#pre{{
$ ls -a
}}
で.sshが表示されない時には、クライアント側の公開鍵を作成します。
#pre{{
$ ssh-keygen -t rsa
}}
作成された公開鍵をVPSサーバに転送します。
((SCPの認証はデフォルトのパスワード認証を使っています。))
#pre{{
$ scp .ssh/id_rsa.pub 管理者アカウント@サーバアドレス:/home/管理者アカウント/
}}
*** サーバ側のSSH設定 [#bf54c1a9]
サーバに戻って、
** コメント [#nbb5d09f]
#vote(おもしろかった,そうでもない,わかりずらい)
皆様のご意見、ご希望をお待ちしております。
#comment_kcaptcha