社内共有用に作成したものです、WEBから配布することにします。
WordPressの脆弱性検査とAWS WAFでどれほど守られるかといった検証を行って頂こうと思います。
その為のものです。
環境
- AWS EC2
開発環境構築
ディレクトリの作成
1 |
$ mkdir -p $HOME/project/{wordpress,db_data,git,shell} |
検証環境作成用スクリプト
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
$ vi $HOME/project/shell/1_init_Setup_local.sh #!/bin/bash set -e # スクリプトディレクトリの取得 SCRIPT_DIR=`dirname $0` cd $SCRIPT_DIR # 開発ツールインストール sudo yum groupinstall -y "Development Tools" sudo yum -y install git zip mailx unzip htop rsync ## docker-composeインストール echo "docker-composeインストール...Start" && sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose && sudo chmod +x /usr/local/bin/docker-compose && echo "docker-composeインストール...End" && ## Dockerインストール echo "Dockerインストール...Start" && sudo yum install -y docker && sudo usermod -aG docker ${USER} && sudo gpasswd -a $USER docker && sudo systemctl restart docker && sudo systemctl enable docker && sudo systemctl status docker && echo "Dockerインストール...End" && ## PHP7.2インストール echo "PHP7.2インストール...Start" && sudo amazon-linux-extras install -y php7.2 && sudo amazon-linux-extras install -y epel && sudo yum install -y php-common php-gd php-mysqlnd php-mbstring php-pdo php-xml php-zip php-pecl-zip && sudo yum install -y git mailx tree && echo "PHP7.2インストール...End" && ## MySQLクライアントインストール echo "MySQLクライアントインストール...Start" && sudo yum install -y mysql && echo "MySQLクライアントインストール...End" && ## Redisクライアント echo "Redisクライアントインストール...Start" && sudo yum install -y redis && echo "Redisクライアントインストール...End" && # サーバの更新と再起動 echo "サーバの更新と再起動...Start" && sudo yum update -y && sudo reboot now |
1 2 |
# chmod +x $HOME/project/shell/1_init_Setup_local.sh # sh $HOME/project/shell/1_init_Setup_local.sh |
WordPress on Docker環境の作成
docker-compose.ymlの作成
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# vi $HOME/project/docker-compose.yml version: '3.3' services: wordpress: container_name: "wordpress" image: wordpress:latest depends_on: - db restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress ports: - "80:80" volumes: - ./wordpress:/var/www/html db: image: mysql:5.7 container_name: "mysql57" volumes: - ./db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress pma: container_name: "pma" image: phpmyadmin/phpmyadmin:latest environment: PMA_HOST: db ports: - "8080:80" restart: always links: - db volumes: db_data: wordpress: |
docker-composeによるDockerの起動
1 2 |
$ cd $HOME/project/ $ docker-compose up -d |
WordPressにアクセス
http://IPアドレス/
phpMyAdminにアクセス
http://IPアドレス:8080
ログイン情報
- ユーザ:wordpress
- パスワード:wordpress
Dockerの全削除
1 2 3 |
docker stop $(docker ps -q) docker rm $(docker ps -q -a) docker rmi $(docker images -q) |