LoginSignup
1
3

More than 3 years have passed since last update.

さくらVPSでLAMP + Wordpress環境を構築する方法まとめ

Posted at

さくらVPSでLAMP + Wordpress環境を構築する方法まとめ

学習用にさくらVPSでLAMP環境を構築したので、手順をまとめます.

目次

動作環境

OS : macOS Mojave 10.14.6
VPS OS : centOS

手順

さくらVPSの申し込み

  1. さくらのwebサイト>VPS>2週間無料でお試し にアクセス
    サーバをカートに入れ申し込み.

  2. メールに記載されているIDとパスワードでログインし,VPSコントロールパネルにログイン

  3. 各種設定>OSインストール
    *OSをインストールする際にVPSにログインするためのパスワードを入力するので忘れずにメモします.
    image.png

これでさくらVPSの申し込みからOSのインストールまでが完了です.

ssh接続

つぎにローカルPCからインターネット上のVPSに接続するためのSSH接続の設定手順をまとめます.

1. Terminal起動とroot権限でログイン

手元のMACでTerminalを起動します.

そして以下のsshコマンドで接続します.
パスワードはOSをインストールした際に入力したものです.

$ ssh root@VPSのIPアドレス

2. ソフトウエアのupdate

$ yum update

3. 一般ユーザの作成

$ adduser jun1 #user追加
$ passwd jun1 #password設定

sudoが使えるように設定

$ visudo
wheel ALL=(ALL) ALL #コメントアウトを外す

jun1ユーザをwheelグループに追加

$ usermod -aG wheel jun1
$ groups jun1
jun1 : jun1 wheel

jun1でログインできるか確認

$ ssh jun1@VPSのIPアドレス
$ パスワード入力 

4. ssh鍵認証の設定

ローカルのPCのターミナルを起動して実行

MAC$ ssh-keygen -t rsa -v
MAC$ ls ~/.ssh
config      id_rsa      id_rsa.pub  known_hosts

sshでVPSに接続

VPS$ mkdir .ssh
VPS$ chmod 700 .ssh

ローカルPCからVPSへ公開鍵を転送

ローカルPC
MAC$ scp ~/.ssh/id_rsa.pub jun1@VPSのIPアドレス:~/.ssh/authorized_keys
MAC$ VPSのパスワード入力

鍵を利用してサーバにログイン

ローカルPC
MAC$ ssh -i ~/.ssh/id_rsa jun1@VPSのIPアドレス

ssh接続のセキュリティ設定

1.ポート番号の設定

VPS
$ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ort #設定ファイルのバックアップ
$ sudo vim /etc/ssh/sshd_config

Portを検索し、#を消して, 22 -> 56789(任意の番号で可)

2.パスワード認証の無効化

PasswordAuthenticationを検索し、
noに変更

3.rootログインの無効化

PermitRootLoginで検索し,noに変更

4.設定ファイルの確認

VPS
$ sudo sshd -t #設定ファイルに構文ミスがないか確認.何も出なければOK
$ sudo systemctl restart sshd #sshdの再起動

5.ファイアウォールの設定

VPS
$ sudo cp /usr/lib/firewalld/services/ssh.xml /etc/firewalld/services/ssh-56789.xml

$ sudo vim /etc/firewalld/services/ssh-56789.xml

port番号を22 -> 56789に変更

VPS
$ sudo firewall-cmd --reload
>success
$ sudo firewall-cmd --permanent --add-service=ssh-56789
>success
$ sudo firewall-cmd --reload
>success
$ sudo firewall-cmd --list-all
>ssh-56789

6.SSH動作確認

上記で開いていたターミナルを閉じずに別タブを開く

MAC
$ ssh -p 56789 -i ~/.ssh/id_rsa jun1@VPSのIPアドレス

7. sshをファイアウォールから削除

VPS
$ sudo firewall-cmd --permanent --remove-service=ssh
$ sudo firewall-cmd --reload

最後に念の為、ssh接続できるか確認

MAC
$ ssh -p 56789 -i ~/.ssh/id_rsa jun1@VPSのIPアドレス

apacheのインストール

VPS
$ sudo yum install httpd 

Apacheを起動

VPS
$ sudo systemctl start httpd
$ systemctl status httpd
#Activeと表示されているか確認

Firewallの設定

VPS
$ sudo firewall-cmd --add-service=http --zone=public --permanent
$ sudo firewall-cmd --add-service=https --zone=public --permanent
$ sudo systemctl restart firewalld

さくらVPSのパケットフィルタの設定

さくらVPSのコントロールパネル>設定>パケットフィルタ>WEBを許可

ブラウザからApacheの動作確認

ブラウザにVPSのIPアドレスを入力し,以下のテストページが表示されればOK

image.png

Apacheの自動起動の設定

VPS
$sudo systemctl enable httpd

権限の設定

ドキュメントルートの所有権をapacheに変更します.

VPS
$sudo groupadd web #グループの作成
$sudo usermod -aG web jun1 #グループにユーザの追加
VPS
$sudo chown apache:web /va/www/html/
$sudo chmod -R 775 /var/www/html/

htmlファイルを作成しApacheの動作確認

VPS
$ vim /var/www/html/index.html
#適当に編集して保存

ブラウザから開いて確認

ドメインの設定

ドメイン取得サイトから購入

今回はバリュードメインに会員登録し、購入します。

DNS設定

バリュードメインにログインし、DNSを設定
詳細は各ドメインサイトから確認します.

バリュードメインの設定画面
a VPSのIPアドレス

ブラウザにドメインを入力し、表示されるか確認
*DNSの反映には1日かかることもあります.

リポジトリの設定

2つのリポジトリをインストールします.

epelリポジトリ(Linuxのリポジトリ)
remiリポジトリ(PHPのリポジトリ)

epelリポジトリ

VPS
$sudo yum repolist
#epelリポジトリがない場合は以下実行
$sudo yum install epel

remiリポジトリ

ブラウザからremiリポジトリのURLをコピー

image.png

VPS
$sudo yum localinstall remiのurl

phpのインストール

インストールできるバージョンを確認

VPS
$ yum list available | grep php-

php71-common.x86_64を確認

VPS
$ sudo yum --enablerepo=remi-php71 install php php-devel php-mysql php-gd php-mbstring

Apaceh再起動

VPS
$ sudo systemctl restart httpd

PHPの設定

VPS
$ sudo cp /etc/php.ini /etc/php.ini.org #設定ファイルのバックアップ
$ sudo vim /etc/php.ini

ファイルのアップロード上限を変更

php.ini
post_max_size = 128M #8M -> 128M
upload_max_filesize = 128M #2M -> 128M

Apaceh再起動

VPS
$ sudo systemctl restart httpd

PHPの動作確認

/var/www/html/index.php
<?php 
echo 'Hello World';

ブラウザにドメイン名を入力し,index.phpを確認する

mysqlのインストール

MariaDBの削除

VPS
$ sudo yum remove mariadb-libs
$ sudo rm -rf /var/lib/mysql

MySQLインストール

MySQL 5.7をインストールする

VPS
$ sudo yum localinstall https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 
$ sudo yum install mysql-community-server

MySQLの設定

VPS
$ sudo systemctl start mysqld
$ sudo cat /var/log/mysqld.log | grep 'temporary password' #初期接続パスワードを確認
VPS
$ mysql_secure_installation
#以下、指示どおり設定していく

VPS
$ mysql -u root -p
#ログインできるか確認

文字コードをUTFに変更

VPS
$ sudo vim /etc/my.conf
my.conf
character-set-server=utf8
VPS
$ sudo systemctl restart mysqld

自動起動の設定

VPS
$ sudo systemctl enable mysqld

sslの設定

certbotを利用するためバーチャルホストを設定

VPS
$ sudo vim /etc/httpd/conf.d/ドメイン名.conf
ドメイン名.conf
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName ドメイン名
</VirtualHost>

certbotをインストール

certbotのwebサイトからソフトウエアとOSを選択

VPS
$ sudo vim install certbot-apache

証明書を取得

VPS
$ sudo certbot --apache

動作確認

ブラウザにドメイン名を入力し、httpsになっているか確認

wordpressのインストール

DBの準備

VPS
$ mysql -u root -p 
mysql> create database myblog;
mysql> create user 'myblog_user'@'localhost' identified with mysql_native_password by '任意のpassword'
mysql> grant all privileges on myblog.* to 'myblog_user'@'localhost';
mysql> flush privileges;

wordpressのダウンロード

VPS
$ wget https://ja.wordpress.org/latest-ja.tar.gz

$ sudo tart -zxvf latest-ja.tar.gz
-C /var/www/
#圧縮ファイルを展開

$sudo chown -R apache:web wordpress/

$sudo vim /etc/httpd/conf/httpd.conf
httpd.conf
DocumentRoot "/var/www/wordpress"

<Directory "/var/www/wordpress">
ドメイン名.conf
DocumentRoot /var/www/wordpress
ドメイン名-le-ssl.conf
DocumentRoot /var/www/wordpress

wordpressの確認

ドメインにアクセスして以下のページが表示されるか確認
image.png

終わりに

今回はさくらVPSにLAMP環境を構築する学習の内容をまとめました。

Linuxコマンドの勉強になりました。

1
3
1

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
1
3