[[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


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
SmartDoc