LoginSignup
17
22

More than 5 years have passed since last update.

さくらVPSの初期設定まとめ

Last updated at Posted at 2014-08-07

step1. サーバに接続する

予め、さくらVPSの仮登録完了メールで下記3点を確認しておきます。

  • IPアドレス: ...
  • ユーザ名: root
  • 初期パスワード: *****

手元にあるターミナルなどのアプリで接続します。


ssh root@IPアドレス

step2. rootのパスワード変更


passwd

step3. VPSサーバのアプリケーションを全て最新の状態にする


yum update

step4. VPSを日本語化する

下記コマンドで設定ファイルを開く


etc/sysconfig/i18n

下記のように修正し、wqコマンドで設定ファイルを閉じる


修正前: LANG="C"
修正後: LANG="ja_JP.UTF-8"

step5. 作業用ユーザの作成


useradd hoge
passwd hoge
usermod -G wheel hoge

step6. 作業用ユーザにsudo権限を与える


visudo

下記のように修正し、wqコマンドでファイルを閉じる


修正前: # %wheel        ALL=(ALL)       ALL
修正後: %wheel        ALL=(ALL)       ALL

step7. suコマンドをグループ内ユーザだけ使えるようにする

下記コマンドで、修正する。


vim /etc/pam.d/su

修正前; #auth           required        pam_wheel.so use_uid
修正後:auth           required        pam_wheel.so use_uid

step8. 公開鍵認証の設定を行う。

  • 8-1. ローカルで公開鍵と秘密鍵を作る

cd ~
mkdir .ssh
ssh-keygen
  • 8-2. 公開鍵をサーバに置く

ssh hoge@IPアドレス ← 一旦ターミナルから、先ほどの`hoge`ユーザでサーバに接続する
cd ~
mkdir .ssh
chmod 700 .ssh
vi .ssh/authorized_keys ←  ローカルで作ったid_rsa.pubの内容をコピペ
chmod 600 .ssh/authorized_keys

step9. SSHのポート番号を変更する


sudo vi /etc/ssh/sshd_config

13行目の下記を修正
修正前 #Port 22
修正後 #Port 10230 ← 1024~65535の間の数値を指定する

sudo /etc/init.d/sshd restart ← sshを再起動し設定を反映させる

step10. ファイアーウォールの設定を行う


sudo vi /etc/sysconfig/iptables ← 下記のiptablesの設定をコピペ
  • iptablesの設定内容

    
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    :RH-Firewall-1-INPUT - [0:0]
    -A INPUT -j RH-Firewall-1-INPUT
    -A FORWARD -j RH-Firewall-1-INPUT
    -A RH-Firewall-1-INPUT -i lo -j ACCEPT
    -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
    -A RH-Firewall-1-INPUT -p 50 -j ACCEPT
    -A RH-Firewall-1-INPUT -p 51 -j ACCEPT
    -A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
    -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
    -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    
    SSH, HTTP, FTP1, FTP2, MySQL
    
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 10230 -j ACCEPT ← ここの"10230"はstep9で設定したポート番号に書き換える!!!!
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
    -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
    COMMIT
    
  • 設定反映

    
    sudo /etc/rc.d/init.d/iptables restart
    

Step11. WEBサーバとしての設定を行う

  • 11-1. Apacheのインストール

sudo yum -y install httpd
  • 11-2. chkconfigの設定

sudo chkconfig httpd on
  • 11-3. WEBサーバのセキュリティ設定

一応バックアップをとっておく


sudo cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org

設定ファイルの変更


sudo vim /etc/httpd/conf/httpd.conf

修正前: ServerTokens OS
修正後: ServerTokens Prod

修正前: ServerSignature On
修正後: ServerSignature Off

修正前: Options Indexes FollowSymLinks
修正後: Options -Indexes FollowSymLinks

設定の反映


sudo service httpd configtest ← 構文チェック
sudo service httpd start

ブラウザにIPアドレスを入力して、Apacheの画面が出ればOKです。

step12. PHPのインストール

そろそろ終盤です。
動的なWEBサーバにするために、PHPをインストールします。

  • PHPインストール

    
    yum -y install php php-mbstring php-mysql php-gd
    
  • 設定ファイルを修正

    
    vim /etc/php.ini

■ エラーログの吐き出し場所を変更
修正前: ;error_log = php_errors.log
修正後: error_log = /var/log/php_errors.log

■ 日本語を扱えるようにする
修正前: ;mbstring.language = Japanese
修正後: mbstring.language = Japanese

修正前: ;mbstring.internal_encoding = EUC-JP
修正後: mbstring.internal_encoding = UTF-8

修正前: ;mbstring.http_input = auto
修正前: mbstring.http_input = auto

修正前: ;expose_php = On
修正後: expose_php = Off

  • 設定反映
    
    service httpd restart
    

これでPHPが使えるようになります。

step13. Mysqlのインストール

  • インストール

    
    yum -y install mysql-server
    
  • 設定変更

    
    vi /etc/my.cnf

下記2行追加
default-character-set=utf8
skip-character-set-client-handshake

  • 設定反映

    
    /etc/rc.d/init.d/mysqld restart
    
  • 初期設定

    
    mysql_secure_installation

最初のEnter current password for root(enter for none)では、何も入れずにEnterを押す。

次のSet root password? [Y/n]でYを押す。
その後は、全てEnterでOK

  • Mysqlの自動起動
    
    /etc/rc.d/init.d/mysqld start
    

番外編 ドメインを割り当てる

  • ドメインを取得する
  1. お名前.comなどでドメインを取得します。
  2. お名前.comなどでDNSの設定を行います。ドメインと自分のサーバのIPアドレスをひもづける
  3. vhost.confを作成する
  • vhost.confの設定
vi /etc/httpd/conf.d/vhost.conf

設定ファイルを書く

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot ドキュメントルートのパス
ServerName 自分で取得したドメイン名
ServerAlias 自分で取得したドメイン名
<Directory "ドキュメントルートのパス">
AllowOverride All
</Directory>
</VirtualHost>
  • Apacheの再起動
/etc/rc.d/init.d/httpd restart
17
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
22