さくらVPSにWebminを入れて、Webサーバー設定するときのやりかた(おさらい)
最近、サーバー設定はWebminばっかりでSSHを使うことがなくなってしまったわけですが、とりあえずWebminを入れるまではSSHも使ったりして。
最近多い、「さくらのVPSをWebサーバーとして使うときの設定手順」を自分用にメモ。
◆Webminのインストール
Termソフトでrootログイン
(個人的にはTeraTerm使ってます)
とりあえず、ゲットしてくる(現在のバージョンは1.580)
# wget http://jaist.dl.sourceforge.net/sourceforge/webadmin/webmin-1.580-1.noarch.rpm
rpmコマンドでインストール
rpm -ivh webmin-1.580-1.noarch.rpm
Webブラウザでhttp://***.***.***.***:10000にアクセス
(ターミナルソフトは接続したままで。)
webminにrootアカウントでログイン。
(最初にVPSのコントロールパネルでログインしたユーザー名・パスワードと同じです)
Webmin > Webmin Configuration で、とりあえず[Language]を日本語に。
◆ip制限をかける(TCP Wrappersの設定)
まずはsshdサービスのアクセス規制。
ネットワーク > TCP Wrappers > Denied hosts > Add a new rule.
Services:sshd
Remote hosts:ALL
で新規ルール作成。
「sshd」サービスについて「ALL(全ての)」リモートホストからのアクセスを禁止する…という設定です。
とりあえず、Termソフトをもういっこ立ち上げてアクセスできなければOK
このままアクセスできないのはアレなんで、Allowed hostsにアクセス許可ホストを登録します。
ネットワーク > TCP Wrappers > Allowed hosts > Add a new rule.
Services:sshd
Remote hosts:アクセスしたいipアドレス、もしくはドメイン
(***.***. とか .ocn.ne.jp とか途中までの入力でおK。自分のIPアドレスとかを入れる)
またまたTermソフトでアクセスしてみて、今度はアクセス出来ればおk。
アクセス制御の設定例
ALL : 192.168.0.1
適用サービス:全て
192.168.0.7 の IP アドレスを持つホストにのみマッチ。
ALL : 192.168.0.0/255.255.255.240
適用サービス:全て
192.168.0.0 にサブネットマスク 255.255.255.240 をかけた結果の 192.168.0.0 ~ 192.168.0.15 のホストにマッチ。
sshd : 192.168.
適用サービス:sshd
192.168.x.x の IP アドレスを持つホストにマッチ。
ALL : .example.com
適用サービス:全て
example.com ドメインに属するすべてのホスト(abcde.example.com や www.example.com)にマッチ。
sshd : *.example.com
適用サービス:sshd
example.com ドメインに属するすべてのホストにマッチ(上と一緒)。
◆EXCEPT(例外処理)の書き方
ALL: .example.com EXCEPT hack.example.com
適用サービス:全て
hack.example.com を除く、すべての example.com ドメインに属するホストにマッチ。
ALL EXCEPT sshd : 192.168.0.
適用サービス:全て
/etc/hosts.allow に記述すれば、sshd を除く全てのサービスへのアクセスを IP アドレス 192.168.0.x を持つホストに許可。
◆ユーザーの追加とパスワードの変更
システム > ユーザおよびグループ > ローカルユーザ > 新しいユーザを作成
「別のモジュールでユーザを作成しますか?」を[はい]にしとくと便利。
システム > パスワードの変更
でパスワードの変更が出来る。
◆各種モジュールのインストール
・Apache
Webmin > Webmin モジュール > www.webmin.com > 「apache」を入力して[ファイルからモジュールをインストール]ボタン。
Refresh Modules
サーバ > Apache Webサーバ > グローバル設定 > 設定ファイルの編集
「AllowOverride None」→「AllowOverride All」に変更(.htaccessを有効にする)
サーバ > Apache Webサーバ > 存在する仮想ホスト > デフォルトのサーバ > MIMEタイプ > 追加MIMEタイプ
タイプ / 拡張子
application/x-httpd-php .php
application/x-httpd-php .htm
application/x-httpd-php .html
を追加。
・MySQL
Un-used Modules > MySQL データベース サーバ
「The MySQL administration program package can be automatically installed by Webmin. Click here to have it downloaded and installed using YUM.」の「Click here」をクリックしてMySQLをインストール。(ver.5.1.6)
サーバ > MySQL データベースサーバ > [MySQL サーバを起動]
管理パスワードの変更 > 新しい管理パスワードを登録 > [更新]
ユーザの許可 > 新規ユーザーの作成 > 「ユーザ名,パスワード,ホスト,許可」を設定して[作成]
「匿名,root」は消したほうがいいかも。もし消した場合は
モジュールインデックス > で管理者IDとパスワードを再設定(先ほど新規で追加したユーザー)
・vsftpd
Webmin > Webmin モジュール > FTP またはhttp URL から > 「http://provider4u.de/images/downloads/vsftpd.tar.gz」を入力 > [ファイルからモジュールをインストール]
(サードパーティー製モジュールからのインストールが出来なくなってる…なぜだろう?)
システム > ソフトウェア パッケージ > Package from YUM > 「vsftpd」を入力して[インストール]
サーバ > Vsftpd > 「Could not find the vsftpd.conf file. Please check your Module Configuration.」の「Module Configuration」をクリック
The path and filename to vsftpd.confを「/etc/vsftpd.conf」→「/etc/vsftpd/vsftpd.conf」
Path where the virtual user will be storedを「/etc/vsftpd/vsftpd_user_conf」→「/etc/vsftpd/user_conf」
に変更して[保存]
サーバ > Vsftpd >Manual entries
#ascii_upload_enable=YES
#ascii_download_enable=YES
をコメントアウト
pasv_enable=YES
pasv_min_port=10100
pasv_max_port=10150
chroot_local_user=NO
を追加
Anonymous FTP > Anonymous enable:No
で匿名ログインを無効に
おまけ。
フォルダの権限を変更するUNIXコマンド(chown)
htmlフォルダ以下全てのファイルの権限を「webmage」に変更
▼
「chown -R webmage html」
解凍コマンド
| 圧縮書庫形式 | 拡張子 | 解凍コマンド |
| TAR 形式+GZIP 形式 | ~.tgz, ~.tar.gz | gzip -dc filename | tar xvf - GNU tarが使える時(zオプションを使える時) tar zxvf filename |
| LZH 形式 | ~.lzh | lha e filename もしくは lha x filename |
| ZIP 形式 | ~.zip | unzip filename |
| bzip2(BZ2) 形式 | ~.bz2 | bzip2 -dc filename もしくは bunzip2 -c filename |
| TAR.BZ2(TBZ) 形式 | ~.tar.bz2, ~.tbz | bzip2 -dc filename | tar xvf - y/z/I オプションを使えるtarコマンドを持っている時 tar yxvf filename tar zxvf filename tar Ixvf filename |
| tar.bz2、tbz2形式 | ~.tar.bz2、tbz2 | tar -jxf filename bzip2 -dc filename | tar xvf - |
| TAR.Z(TAZ) 形式 | ~.tar.Z | tar zxvf filename もしくは uncompress -c filename | tar xvf - |
| gzip(GZ) 形式 | ~.gz | gunzip filename もしくは gzip -dc filename |
| compress(Z) 形式 | ~.Z | uncompress filename もしくは compress -d filename |
| TAR 形式 | ~.tar | tar xvf filename |
| ARJ 形式 | ~.arj | unarj filename |
◆PHP関連インストール
PHP5.3のインストール。
システム > ソフトウェア パッケージ > Package from YUM > 「php」を入力して[インストール]ボタン。
最近まで「php53」でコマンドを入れなきゃいけなかったけど、どうやら正式にphp5.3がインストールデフォルトになった模様。
ほかにも入れておきたいPHP関係のモジュール。
php-mysql
php-mbstring
php-gd
php-pdo
php-pear
ここまでくるとApache/MySQL/PHPが使えるようになるのでLAMP環境でWebサービス開発ができるようになる…と。