2017年1月24日火曜日

さくらのクラウドを使ってみる(2)

次の日サーバを起動してWebページを確認する。
表示されない…。

firewalld が自動起動している。
systemctl is-enabled firewalld
enabled

firewallを止めてしまうのはまずいので、ポート80 (http) と 443 (https)を開けておく。
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

firewalld が起動しているのを確認して…
systemctl status firewalld
active (running)
Webページが表示されることを確認。

WordPressで動作確認


wget https://ja.wordpress.org/latest-ja.tar.gz
-bash: wget: command not found

何から何まで自分でやらなければならない、それが root ってことだ。
yum -y install wget

tar zxf latest-ja.tar.gz
chown -R apache:apache wordpress

WordPressにアクセスしてみる。
「お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。」

あれ、php-mysql 入れるの忘れてた。しかも php-mysqlnd に変わってる。

yum --enablerepo=remi,remi-php56 install php-mysqlnd

後で必要になるかもしれないので以下もインストール。
php-pear php-xmlrpc php-soap

php-mcrypt を入れようとしてエラー。
Error: Package: php-mcrypt-5.6.30-1.el7.remi.x86_64 (remi-php56)
Requires: libmcrypt.so.4()(64bit)

libmcrypt-devel を入れて…
yum --enablerepo=epel install libmcrypt-devel

再チャレンジ
yum --enablerepo=remi,remi-php56 install php-mcrypt

入った。

MySQLデータベース作成


MySQL の root ユーザを作成してパスワードを設定
/usr/bin/mysqladmin -u root password 'PASSWORD'

error: 'Access denied for user 'root'@'localhost' (using password: NO)'


以下で root の初期パスワードがわかるらしい。
http://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html

grep 'temporary password' /var/log/mysqld.log

それらしい文字列が釣れたので、さっそく試してみる。
mysql -u root -p

入れた。
すぐパスワードを変更しておけ…か。
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPASSWORD';

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
ポリシーね…。
https://dev.mysql.com/doc/refman/5.6/ja/validate-password-plugin.html

あれ、mysql_secure_installation を「必ず実行して MySQL インストールをセキュアにしてください。」だそうだ。これでも root のパスワードを設定できるみたいだけど、最初のパスワードはやっぱり必要みたいだな。

データベースとユーザを作って早速WordPressをインストールっと…
ysql> create database wpdb;
Query OK, 1 row affected (0.00 sec)

mysql> grant all privileges on wpdb.* to wpuser@localhost identified by 'hogehoge';
Query OK, 0 rows affected, 1 warning (0.01 sec)

※ waning を表示するには、以下を参照。
https://dev.mysql.com/doc/refman/5.6/ja/show-warnings.html

wordpressインストールディレクトリにアクセスして、「さあ、始めましょう!」をクリック。
データベース情報を入力して、「インストール実行」。

WordPressサイト情報を入力して、「WordPressをインストール」をクリック。

無事ログイン画面が表示され、ログインできました。

htaccessを許可するための設定


/etc/httpd/conf.modules.d/00-base.conf 内にて以下の記述を確認
LoadModule rewrite_module modules/mod_rewrite.so

/etc/httpd/conf/httpd.conf 内にて、以下の設定をする。
<Directory /var/www/html>
    AllowOverride All
</Directory>

apache再起動
systemctl restart httpd

【参考】
https://devops.profitbricks.com/tutorials/install-and-configure-mod_rewrite-for-apache-on-centos-7/

phpMyAdminのインストール


yum install --enablerepo=remi,remi-php56 phpMyAdmin

Error: Package: php-tidy-5.6.30-1.el7.remi.x86_64 (remi-php56)
Requires: libtidy-0.99.so.0()(64bit)

libtidy-devel を入れて…
yum --enablerepo=epel install libtidy-devel

再チャレンジ
yum install --enablerepo=remi,remi-php56 phpMyAdmin
Complete!

apacheを再起動して、/phpmyadmin/ にアクセス…

Forbidden
You don't have permission to access /phpmyadmin/ on this server.

/etc/httpd/conf.d/phpMyAdmin.conf に

<Directory /usr/share/phpMyAdmin/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     Require local
     ...

とあり、リモートからのアクセスは受け付けていない。
とりあえず、開発中だけリモートから受け付けることにする。

     Require all granted

apacheを再起動して、/phpmyadmin/ にアクセス…

見慣れたログイン画面が表示された。(「phpMyAdmin へようこそ」なんて書いてあったんだ…)

さすがに root でログインはないだろうということで、ユーザを作っておく。

GRANT SELECT, INSERT, DELETE, UPDATE, ALTER ON `wp`.* TO 'pma'@localhost IDENTIFIED BY 'PASSWORD';

FTPサーバを立てる


yum -y install vsftpd

vi /etc/vsftpd/vsftpd.conf

以下を有効にする。

anonymous_enable=NO
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
local_root=/var/www/html/
use_localtime=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf

firewalld に FTPを許可する。

firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload

FTPユーザを作成する。
adduser ftpuser
passwd hoge

mkdir /etc/vsftpd/vsftpd_user_conf
vi vsftpd_user_conf/ftpuser

中に以下を記述
local_root=/var/www/html/

chroot_list にユーザ追加
ftpuser

vsftpdを再起動
systemctl restart vsftpd

上位ディレクトリへアクセスできないことを確認

書き込み、削除ができない…パーミッションを変更する。
chown -R apache:apache /var/www/html
usermod -G apache ftpuser

/etc/vsftpd/vsftpd.conf に以下を追加。
allow_writeable_chroot=YES

アップロード及び削除できた。

0 件のコメント:

コメントを投稿