さくらスタンダードプランからさくらVPSに移転してみた。

もう1週間前ですが、さくらスタンダードプランからさくらVPSに引っ越したときにやった作業のメモです。ちゃんと整形してないので見辛いですが、まぁ自分用の備忘録。あとサーバ構築はド素人なのでセキュリティホールはあると思う。。

下記2点を目標に作業しました。それ以外のことはやってない。

  • WordPressの移行
  • メールサーバの構築

とりあえず最初にやったこと

  1. rootパスワードの変更 そのまんまだと覚えにくいし、あんまりよろしくない気がしたので。。 puttyでログインしてrootパスワード変更
  2. 一般ユーザ作成 rootでログインするのはよくないので、ログイン用の一般ユーザ作りました。
  3. rootユーザでログインできないようにする。 # vi /etc/ssh/sshd_config PermitRootLogin no ←追加  設定反映 # /etc/rc.d/init.d/sshd restart 別にputtyを立ち上げて一般ユーザで入れることとrootで入れないこと、一般ユーザからsuでrootになれることを確認。

apache も php も mysql も入ってないので、そこからインストール

  1. apache インストール # yum install httpd
  2. php インストール # yum -y install php php-mbstring php-mysql php-gd
  3. mysql インストール # yum install mysql-server パスワード設定 # mysqladmin -u root password 'password' 自動起動onにする # chkconfig --list mysqld mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off # chkconfig mysqld on # chkconfig --list mysqld mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off # mysql -u root -ppassword mysql mysql> create database wordpress

WordPressのインストール

  1. WordPressのインストール # cd /var/www/ # wget http://ja.wordpress.org/wordpress-3.1-ja.tar.gz # tar zxvf ./wordpress-3.1-ja.tar.gz # cd ./wordpress # mv ./wp-config-sample.php wp-config.php # vi ./wp-config.php 下記を編集 define('DB_NAME', 'wordpress'); define('DB_PASSWORD', 'passward'); define('DB_HOST', 'localhost');
  2. httpd.conf 設定 # vi /etc/httpd/conf/httpd.conf 下記を追加 <VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com DocumentRoot /var/www/wordpress/ ServerName dummy-host.example.com ErrorLog /var/log/httpd/blog/error.log CustomLog /var/log/httpd/blog/access.log common </VirtualHost>
  3. webにアクセスしてWordpress インストール
  4. ftpインストール # yum -y install vsftpd # /etc/rc.d/init.d/vsftpd start これやらないとWPでプラグイン落とせない
  5. 元のWordpressからデータエクスポート
  6. 移す方のWordpressにデータインポート
  7. プラグインのインストール とりあえず元々入れてたやつで使ってるやつ入れてみた。
    • AddQuicktag
    • All in One SEO Pack
    • New AdMan
    • Custom-More-Link-Complete
    • WP FollowMe
    • Google XML Sitemaps
    • SyntaxHighlighter Evolved
    • Topsy Retweet Button
    • Ultimate Google Analytics
    • WP Security Scan
    • WP to Twitter
    • WPtouch

メールサーバ構築


  1. postfixインストール

    yum -y install postfix


  2. postfix設定

    vi /etc/postfix/main.cf

    myhostname = mail.fedorasrv.com ← 追加(メールサーバー名を指定)
    mydomain = fedorasrv.com ← 追加(自ドメイン名を指定)
    myorigin = $mydomain ← 追加(ローカルからのメール送信時の送信元メールアドレス@以降にドメイン名を付加)
    inetinterfaces = all ← 変更(外部からのメール受信を許可)
    mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain ← 変更(自ドメイン宛メールを受信できるようにする)
    home
    mailbox = Maildir/ ← 追加(メールボックス形式をMaildir形式にする)
    smtpd_banner = $myhostname ESMTP unknown ← 追加(メールサーバーソフト名の隠蔽化)

  3. <li>SMTP-Auth用ユーザ名、パスワードにシステムのユーザ名、パスワードを使用する
    

    /etc/rc.d/init.d/saslauthd start

    chkconfig saslauthd on

    <li>新規ユーザ追加時に自動でホームディレクトリにMaildir形式のメールボックスが作成されるようにする
    

    mkdir -p /etc/skel/Maildir/{new,cur,tmp}

    chmod -R 700 /etc/skel/Maildir/

    <li>メールサーバー切替え
    

    alternatives --config mta

    There are 2 programs which provide 'mta'.

    Selection Command

    *+ 1 /usr/sbin/sendmail.sendmail 2 /usr/sbin/sendmail.postfix

    Enter to keep the current selection[+], or type selection number: 2 ←2を入力

    <li>sendmail のプロセスが残ってたので、killした
    

    ps -ef | grep sendmail

    kill -9 xxxxx

    <li>postfix 起動
    

    /etc/rc.d/init.d/postfix start

    chkconfig postfix on

    <li>devcotインストール
    

    yum -y install dovecot

    <li>devcot 設定
    

    vi /etc/dovecot.conf

    mail_location = maildir:~/Maildir ← 追加(メールボックス形式をMaildir形式とする)
    protocols = imap imaps pop3 pop3s ← 追加

    <li>devcot起動
    

    /etc/rc.d/init.d/dovecot start

    chkconfig dovecot on

    <li>メールユーザ追加
    

    useradd -s /sbin/nologin username