テストサーバーを作り直したので、メモを残します。テストサーバーは Vmware Server 上に仮想サーバーとして作成しました。物理環境でも手順は変わらないはず。手早く構築するために手順は最低限にしています。
テスト環境構築フロー
- Vmware イメージ作成
- CentOS5.4 インストール
- ネットワーク設定
- セキュリティ関係停止
- ユーザー作成
- FTP インストール
- Apache インストール
- Bind インストール
- PHPインストール
- MySQL インストール
- Virtual ホスト設定
- phpMyadmin インストール
Vmware ゲストOS作成
使用している Vmware Server は 1.x 系。2.x 系が使いづらかったのと、職場の環境が VMware Workstion とほぼ同じインターフェースなので。普通にゲスト OSを作成。
- Guset oprating system : Linux で
- Version : Red Hat Enterprise Linux 4
- ネットワークは bridge でも NAT でも用途に合わせて
- サイズは適当に10から20GB程度
スナップショットを利用すると、後から仮想ディスクの容量を増やすことができなくなるため、多めに。
- Allocate all disk now :
ここにチェックを入れてしまうと、作成に時間がかかるのと、指定したサイズ分物理ディスクを使ってしまう。上で指定した10-20GB使われると困るので、オフにする。
CentOS インストール
GUI インストールで全てデフォルト。ネットワークも後で設定するのでそのまま。
ネットワーク設定
IP を変えると SSH などの接続も切れてしまうので、VMware のコンソールで直接操作。VMware のネットワーク設定を NAT にしている場合は、[Host] → [Virtual Network Settings] → [NAT] タブから、所属しているネットワーク、ゲートウェイ、サブネットマスクを確認。
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=static IPADDR=192.168.16.10 NETMASK=255.255.255.0 GATEWAY=192.168.16.2
適用させるために、サービス再起動。
[root@localhost ~]# service network restart
セキュリティ関係停止
開発の時に邪魔になるセキュリティ関連の機能を停止します。
iptables の停止
[root@localhost ~]# service iptables status
ステータスを確認して、なんかいっぱい出てきたら動いてる。動いてたら停止。
[root@localhost ~]# service iptables stop ファイアウォールルールを適用中: [ OK ] チェインポリシーを ACCEPT に設定中filter [ OK ] iptables モジュールを取り外し中 [root@localhost ~]# chkconfig iptables off [root@localhost ~]# chkconfig --list iptables iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off
SElinux の停止
getenforce が SELinux の状態確認で、Permisive が停止状態。自動起動の停止は sysconfig の selinux を編集する。
[root@localhost ~]# getenforce Enforcing [root@localhost ~]# setenforce 0 [root@localhost ~]# getenforce Permissive [root@localhost ~]# vi /etc/sysconfig/selinux SELINUX=disabled
yum-updatesd の削除
centossrv.com によると、「デフォルトで1時間ごとにアップデートチェックを行うようになっており、手動によるパッケージインストールと競合するとインストールが失敗する」 とのことなので、早々に削除。
[root@localhost ~]# /etc/rc.d/init.d/yum-updatesd stop yum-updates 停止中: [ OK ] [root@localhost ~]# yum -y remove yum-updatesd
ユーザー作成
作業用に root 以外のユーザーを作成。ユーザーの作成には、useradd コマンドを使用。passwd コマンドでパスワードを加えることで初めて使用できるようになる。
[root@centos ~]# useradd centos [root@centos ~]# passwd centosChanging password for user centos. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully.
FTP – vsftpd
[root@centos ~]# yum -y install vsftpd
設定は、アスキーモードでの転送と、ディレクトリの削除を可能にするだけ。
[root@centos ~]# vi /etc/vsftpd/vsftpd.conf ascii_upload_enable=YES ascii_download_enable=YES ls_recurse_enable=YES
起動、自動起動の設定。終わったら、FTPクライアントから接続してみる。
[root@centos ~]# /etc/rc.d/init.d/vsftpd start [root@centos ~]# chkconfig vsftpd on [root@localhost ~]# chkconfig --list vsftpd vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
Apache
[root@centos ~]# yum -y install httpd
設定は、CGI、SSI、.htaccess の許可のみ。Virtual host の設定は後から。
[root@centos ~]# vi /etc/httpd/conf/httpd.conf <Directory "/var/www/html"> Options Includes ExecCGI FollowSymLinks AllowOverride All
テストページの削除。
[root@centos ~]# rm -f /etc/httpd/conf.d/welcome.conf [root@centos ~]# rm -f /var/www/error/noindex.html
ドキュメントルートの所有者を作業用ユーザーに変更。
[root@localhost ~]# chown centos:centos /var/www/html
起動、自動起動の設定。
[root@localhost ~]# service httpd start httpd を起動中: [ OK ] [root@centos ~]# chkconfig httpd on [root@localhost ~]# chkconfig --list httpd httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
テストしてみる。以下を実行して、ブラウザからサーバーのIPにアクセス。
[root@centos ~]# echo test >> /var/www/html/index.html
























































