以前ラズパイ4Bにapache2でサーバーを立てましたが、今回はそこにWordPressをインストールしましたのでその記録。
wordpressは頻用されているオープンソースのCMS(コンテンツマネジメントシステム)です。
これで遠慮なくwordpressを攻撃監査出来るぞ!
左が攻撃用のラズパイ5、右が守備側のラズパイ4B(既にApacheでサーバー立ててありますが、今回そこにwordpressを搭載します)

MySQLの設定
まずはRDBMS(リレーショナルデータベース管理システム)の ” mysql ” で、wordpress用のデータベースを設定(新設)します。
sudo mysql -u root -p

WordPress.org の公式ローカルサイトによれば、ここは ” root ” ではなくて ” adminusername ” などの適当な一般ユーザー名の方がbetterということです。
パスワードはいつものkaliのログインパスワードでOKです。
以後はmysqlログイン後の画面となり、プロンプトが変わります。
mysqlのプロンプトには ” MariaDB[(none)] ” と表示されています。
* mysqlとMariaDBの違いについて:
両者は同じルーツを持つ(MariaDBがmysqlから派生)RDBMSであり互換性がありますが、MariaDBの方が完全なオープンソースでありかつ高速高機能です。
kaliではmysqlとして扱われていますが、その実体はMariaDBの方が採用されているようです。
(ちなみにparrot OSでも同じくMariaDBとなります)
以下のコマンドを1行ずつ入力して行きます。(最後の ” ; ” を忘れないように)
一問一答形式で入力に対して応答があります。
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

CREATE USER ‘wpuser’@’localhost’ IDENTIFIED BY ‘パスワード’;

ここのパスワードが後に、wordpressログイン時のパスワードとなります。適切なパスワードを設定します。
またユーザ名がwordpressログイン時のユーザ名となります。
GRANT ALL PRIVILEGES ON wordpress.* TO ‘wpuser’@’localhost’;
FLUSH PRIVILEGES;
EXIT;

以上でmysql(正確にはMariaDB)の設定は終わりです。
WordPressの導入
次にwordpressを導入します。
wordpressのダウンロード
ディレクトリを /tmp ” に移ります。(ダウンロード時に使う一時的な作業場所)
cd /tmp
ワードプレスのサイトからダウンロード。
wget https://wordpress.org/latest.zip

wordpressの解凍
落としてきた圧縮ファイルを解凍します。
unzip latest.zip

非常に多くのファイルがあります。
wordpressの配置
解凍されたwordpressを作業場所から、本来の定位置に移動します。
sudo mv wordpress /var/www/html/

パーミッションの設定
wordpressファイル群のパーミッションなどを変更します。( ” -R ” オプションはディレクトリごと変更するオプション)
sudo chown -R www-data:www-data /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress

Apache2の設定
次にaoache2側の設定ファイルを作ります。
下の例では ” nano ” テキストエディタを用いて設定ファイルを作成しています。
sudo nano /etc/apache2/sites-available/wordpress.conf

設定ファイルの内容
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/wordpress
ServerName webサーバードメインまたはIPアドレス
<Directory /var/www/html/wordpress>
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

catで確認しています。

以下のコマンドを順に実行します。
sudo a2ensite wordpress
sudo a2enmod rewrite
sudo systemctl restart apache2
1行目:サイトの有効化
2行目:モジュールの有効化
3行目:apache2の再起動(で変更を反映)

以上でターミナルでの操作は終了です。
WordPressのインストールとセットアップ
ここからはwebブラウザでアクセスして作業します。(どのマシンからでも可。自分自身でもいいし、リモートでも可です)
ブラウザで ” http://サーバーのドメイン名又はIP ” に接続すると、wordpressのインストール画面が表示されます。

まずは言語を選択します。


次に必要事項を入力します。ユーザ名とパスワードは、Mysqlの設定時と同じものです。

ここでwordpressのインストールが完了します。

次に必要情報を入力します。(後で変更できます)

とりあえずの設定完了です。

ログイン画面が出ます。

ブログ運営の皆様にはお馴染みのwordpressのダッシュボードに辿り着きました。

本来ならここから設定やらテーマやらカスタマイズやらプラグインやらが果てしなく続くのですが今回はここまでです。(どうせ撃墜される側なもんで)
まとめ
という訳で、今回は撃墜される側のラズパイ4B+kaliLinux+apache2にwordpressを搭載する作業の経過を記録しました。
さあ攻撃監査するぞ!
<PR>
コメント