conoha vps で wordpress の構築
GMOクラウドで wordpress を運用していましたが
料金を抑え、さらにSSDで早いと聞いた
ConoHa で wordpress を運用するようにします
を参考に構築を行います
なお、初期設定については
ConohaサーバーへWordPressをインストールするまでの全行程(1)Conohaサーバーの立ち上げ
を参考に
ちなみに、アカウントと root パスワードは決めたものの
root パスワードを忘れ
ログインできない状態になり
https://www.conoha.jp/faq/troubleshooting/
で調べたけど
rootパスワードやVPS内で作成したアカウント情報ついて弊社側では確認ができません。サーバー再構築やシングルユーザモード・レスキューモードにてパスワードの再設定をご検討ください
とのことなので
を参考に実践
Conoha にログインし
仮想サーバを選択して
コンソールをクリック
次に
特殊キーで ctrl + alt + delete をクリック
再起動するので
キーボードの上下キーをおすとカーネル選択画面になるので
一番上を選んで e をクリック
すると編集モードになるが、編集するべき場所がみつからないので
一度削除し再度作成
Conoha コンソールでIPアドレスを確認し
1 | ssh root@IPアドレス |
でログイン
次にアップデート
1 | yum -y update |
次に一般ユーザの設定
ConohaサーバーへWordPressをインストールするまでの全行程(2)サーバーのセキュリティを強化する
を参考に実践
1 | useradd ユーザ名 |
で一般ユーザを追加し
1 | passwd ユーザ名 |
で一般ユーザにパスワードを付与
1 | usermod -G wheel ユーザ名 |
でユーザを wheel グループに追加
なお、セキュリティに関してはポート変更よりも
ConohaサーバーへWordPressをインストールするまでの全行程(5)SSH接続を公開鍵認証で行う
を参考に公開鍵認証に変更します
なお、新規にサーバを選ぶときには
https://www.conoha.jp/guide/vps_sshkey.php
にあるように公開鍵認証を設定できるようです
一度ログアウトし
作成した一般ユーザで ssh でログインします
[shel]
ssh 一般ユーザ名@IPアドレス
[/shell]
ログインできたら
1 | ssh -keygen -t rsa |
で鍵を作成
id_rsa.pubのファイル名をauthorized_keysに変更するので
1 2 | cd . ssh / mv id_rsa.pub authorized_keys |
次に権限の変更
1 2 | sudo chmod 700 ../. ssh / sudo chmod 600 ../. ssh /authorized_keys |
次に scp コマンドで秘密鍵をローカルへ移動します
一度ログアウトして
ubuntu 側で
1 | scp 一般ユーザ名@IPアドレス: /home/ 一般ユーザ名/. ssh /id_rsa /home/ 自分のユーザ名/. ssh / |
これで再度 sshで接続すると
今度はパスワードを入力することなくログインできるようになります
次にせっかく公開鍵認証にしたのでパスワードによるログインは禁止します
1 | sudo vim /etc/ssh/sshd_config |
でファイルを開き
38行目の
1 | PermitRootLogin yes |
を
1 | PermitRootLogin no |
としてRootログインを拒否
63行目の
1 | PasswordAuthentication yes |
を
1 | PasswordAuthentication no |
へ変更してパスワード認証を拒否
なお
RSAAuthentication の項目がみあたらないので調べたら
sshd_config に RSAAuthentication no を設定する必要はもうない
にあるように設定は不要のようです
Conoha の一般ユーザーで公開鍵認証を使用してSSHログインする
でもこの部分はなくなっていました
あとは
1 | sudo systemctl restart sshd.service |
でサービスを再起動して変更を反映しておきます
次にファイアウォールの設定
https と http を開いておくので
1 2 | sudo firewall-cmd --add-service=http sudo firewall-cmd --add-service=https |
次に再起動してもそのままの設定になるように
1 2 | sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https |
次に
ConohaサーバーへWordPressをインストールするまでの全行程(3)Apache MariaDB PHP7のインストール
を参考に
PHP7 のインストール
まず Remi リポジトリの追加
1 | sudo yum -y install http: //rpms .famillecollet.com /enterprise/remi-release-7 .rpm |
リポジトリ追加の確認は
1 | ls -l /etc/yum .repos.d/ |
で確認可能
次に PHP7 のインストール
1 2 | sudo yum install --enablerepo=remi-php71,remi-safe php p hp-mbstring php-pear php-mysql php-mcrypt php-gd |
これで依存関係で Apache もインストールされます
PHPのヴァージョン確認は
1 | php --version |
次に MariaDB のインストール
1 | sudo yum -y install mariadb mariadb-server |
そして MariaDB の起動
1 | systemctl start mariadb.service |
起動確認には
1 | sudo systemctl list- units | grep mariadb |
次に再起動したときにも自動起動するように設定
1 | systemctl enable mariadb.service |
実行するとユーザパスワードを求められるので入力
登録状態の確認には
1 | systemctl list-unit-files | grep mariadb |
次にMariaDB の初期設定
1 | mysql_secure_installation |
実行するとセキュリティ設定でいくつか質問がでてきます
Enter current password for root (enter for none):
では Enter を押します
Set root password? [Y/n]
で root パスワードを設定するか聞かれるので y
New password:
で新しいパスワードを設定
Re-enter new password:
で確認のためもう一回入力
Remove anonymous users? [Y/n]
では匿名ユーザを削除するか なので y
Disallow root login remotely? [Y/n]
で root をリモートでログインを禁止するかなので y
Remove test database and access to it? [Y/n]
でテストDB削除なので y
Reload privilege tables now? [Y/n]
でテーブルの再読み込みするかなので y
これで設定完了
次に MariaDB を再起動することで設定を反映
1 | systemctl restart mariadb |
参考サイトでは wordpress 用DB作成しているけど
別サイトから引っ越しするので
これは保留し
Apache 関連の設定
最初に Apache の起動
1 | systemctl start httpd.service |
起動しているかを確認
1 | systemctl list- units | grep httpd |
次に再起動してもApache が起動するよう設定
1 | systemctl enable httpd.service |
設定の確認には
1 | systemctl list-unit-files | grep httpd |
次に Apache の設定
を参考に