差分

サーバー構築方法(Linux編)

8,221 バイト追加, 2016年5月21日 (土) 13:10
/* WebServerをインストール */
Linuxでサーバを組みたい方へ。
 
== はじめに ==
ここではCentOSを使った自宅サーバの構築方法(というよりも構築レポート?)を公開します。<br>
初めてサーバーを立てる方や、初心者の方はまず[[自宅サーバーを始めるあなたに]]をご覧になることをお勧めします。
 
Linuxサーバー構築で参考になるサイト:[http://www.server-world.info/ http://www.server-world.info/]
 
== 使用したもの ==
| 多分4GBもあれば充分じゃないかな?
|}
 
 
== Linuxについて ==
LinuxはWindowsとはいろいろと概念が異なることを頭に入れておこう。特に、WindowsならGUIで行えていた作業も、Linuxサーバー構築作業ではコマンドベースのCUIが避けて通れない点とか。
 
概念と仕組みとコマンドを理解すれば何も怖いことはないが、最初戸惑うのは仕方ない、恐れずいこう。
 
== 準備 ==
* サーバにするPC
詳しくは[[自宅サーバーを始めるあなたに#必要なもの | こちら]]を参照。
 
== OSのインストール ==
ちなみに今回はとりあえずMinimal(最小構成)でインストールしてます。サーバーとしてしか使わないPCだったらデスクトップ環境は入れない方が良い。
 
 
== ログイン ==
まずは、ログイン。<br>
[[File:login.jpg|320px]]
(設定したクライアント名) login:
と出ているはずなので、rootと入力。パスワードはOSインストール時に設定したパスワードを入力。パスワード入力時には「*」などは出てこないけれどご心配なく。<br>
なお、今回私が設定したクライアント名はodangoserverです。
 
[root@odangoserver ~]# _
みたいに出ていればログイン成功。
 
 
== ネットワーク設定 ==
ローカルIPを固定しておく。設定を変更するためにviエディタでファイルを書き換える。
vi /etc/sysconfig/network-scripts/ifcfg-eth0
普通は有線ならeth0だろうから上記でいけるはず。ダメならifconfigでインターフェース名を確認。
 
なおviコマンドの使い方は、「I」や「A」キーでInsertモードになって編集できる。終わったらEscapeでモードを抜ける。「:wq」で保存して終了。「:q!」で保存せずに終了。
 
なんか色々書かれていると思うけれど、以下を追加。もしくは既にある場合は編集。
BOOTPROTO="static"
IPADDR="192.168.0.200"
NETMASK="255.255.255.0"
DNS1="192.168.0.1"
GATEWAY="192.168.0.1"
DNS1やGATEWAYにはブロードバンドルータのIPアドレスを、IPADDRは、ルータのIPと第1~第3オクテット合わせて第4オクテットは好きな数字を設定(ただし他のPC等と被らないように)。だいたいこれでいけるはず、多分。
 
設定完了したらネットワークサービスを再起動。
/etc/rc.d/init.d/network restart
 
あと、ファイアウォールもいらんので停止させちゃう。
/etc/rc.d/init.d/iptables stop
 
システム起動時にファイアウォール起動しないようにしておく。
chkconfig iptables off
chkconfig ip6tables off
 
SELinuxもいらんので無効に。
vi /etc/selinux/config
で、以下を書き換え。
SELINUX=disabled
 
とりあえず再起動。
reboot
 
 
== SSH Serverのインストール ==
ずっと実機にディスプレイとキーボードを繋いでセットアップしていくのは面倒くさいのでSSHでリモート操作していく。とりあえずここではユーザ名とパスワードでログインしちゃうけど、公開鍵認証設定すると楽だしセキュアで良いので、余裕あったらググってやってみて。
 
SSHは、OSインストール時Minimal以外選択すればこれはデフォで入ってるんじゃないかな? なのでそういう人は設定だけでOK
 
=== インストール ===
インストールする場合はyumコマンドで。
yum -y install openssh-server
ダーッと出てきてインストール完了。
 
=== 設定 ===
SSHサーバの設定も変更する。特にポート番号は変更しておいた方がいいっすね。
vi /etc/ssh/sshd_config
で、
#Port 22
となっているのを、以下のように書き換え。
Port (適当なポート番号)
ポート番号は、0~65535のうち[http://e-words.jp/w/%E3%82%A6%E3%82%A7%E3%83%AB%E3%83%8E%E3%82%A6%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88.html ウェルノウンポート]に無いものにする。
 
終わったらSSHサービスを再起動。
service sshd restart
 
 
== SSHで接続する ==
[[File:ssh.png | thumb | PuTTYでSSH接続した様子]]
ここまで終わったら普段使っているWindows機にお好きなSSHクライアントをインストール。PuTTYとかTeratermとか。<br>
インストールしたらIPアドレス・ポート番号・ユーザ名・パスワードを入力してログイン。
 
多くのSSHクライアント共通?で、選択したらコピーされて、右クリするとペーストという操作法があるので、以後活用していく。
 
 
== NTPの設定 ==
時刻合わせるためにNTPインストール。
yum -y install ntp
サーバーを変更します。
vi /etc/ntp.conf
予めあるNTPサーバーの設定をコメントアウトして、
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
新たに追加。
server ntp1.jst.mfeed.ad.jp iburst
server ntp2.jst.mfeed.ad.jp iburst
server ntp3.jst.mfeed.ad.jp iburst
サービス起動して、登録。
/etc/rc.d/init.d/ntpd start
chkconfig ntpd on
確認は以下のコマンドでできる。
ntpq -pn
 
 
== WebServerをインストール ==
サーバといったらまずウェブサーバー。代表的なWebServerアプリケーションであるApacheを入れます。
 
yum -y install httpd
インストールしたらサービスを起動。
service httpd start
 
んで、ブラウザからIPアドレスを打ち込めばとりあえずテストページが見られるようになっているはず。<br>
[[File:testpage.png|320px]]
 
起動とともにサービスも立ち上がるようにしておく。
chkconfig httpd
 
== PHPインストール ==
[[File:php_image.png | thumb | phpinfoのイメージ]]
やっぱ鯖立てたらいろいろ動かしたい…動かしたくない? というわけでWeb上で動的コンテンツを実現するPHPをインストールします。
 
=== インストール ===
まずはyumで。
yum -y install php php-mbstring php-pear
 
=== 設定 ===
Apache設定の書き換え。
vi /etc/httpd/conf/httpd.conf
で、ディレクトリインデックスを
DirectoryIndex index.html index.php
と変更。402と押してエンターでその付近にジャンプできるはず。
 
Apacheを再起動して完了。
service httpd restart
 
=== 確認 ===
確認のためにPHPテストページ作ってみよう。
vi /var/www/html/phptest/index.php
で、
<?php
phpinfo();
?>
だけ入れて保存して終了(:wq)。
 
PCでhttp://サーバーのIP/phptest/にアクセスして、PHPのバージョンとかいろいろズラーッと出てきたら成功。
 
 
== MySQLのインストール ==
PHPと一緒に用いられることが多いデータベースソフトのMySQLをインストールします。
 
=== インストール ===
yumでインストール。
yum -y install mysql-server
 
=== 設定 ===
文字コードをUTF-8にするため、設定を編集。
vi /etc/my.cnf
で、最後に
character-set-server=utf8
を追加。
 
サービスを開始。
service mysqld start
 
起動とともにサービスも立ち上がるようにしておく。
chkconfig mysqld on
 
=== mysql_secure_installationで初期設定 ===
対話形式で初期設定できる、楽ちん!
mysql_secure_installation
で、いろいろ聞かれる。
 
Enter current password for root (enter for none):
パスワードは初期状態で設定されてないのでそのままエンター。
 
続いてパスワードを設定。
Set root password? [Y/n] y
New password:
Re-enter new password:
 
匿名ユーザーいらん!削除。
Remove anonymous users? [Y/n] y
 
リモートでrootログインいらん!却下。
Disallow root login remotely? [Y/n] y
 
テストデータベースいらん!削除。
Remove test database and access to it? [Y/n] y
 
リロード。
Reload privilege tables now? [Y/n] y
 
=== 確認 ===
mysql -u root -p
でさっき設定したパスワードを入力してログイン。
show databases;
と打つと今あるデータベース一覧が出てくる。
exit
で終了。
 
== 書きかけです ==
 
 
== 関連項目 ==
* [[自宅サーバーを始めるあなたに]]
* [[録画サーバー入門]]
* [[録画サーバー構築方法(Linux編)]]
301
回編集