記事一覧
- AWS EC2でサーバを構築 1 - Amazon Linux 2 準備編
- AWS EC2でサーバを構築 2 - 各種インストール編
- AWS EC2でサーバを構築 3 - Apache + Let's Ecnrypt + PHP-FPM編 (脆弱性診断「A+」を狙う)
- AWS EC2でサーバを構築 4 - Nginx + Let's Ecnrypt + PHP-FPM編 (脆弱性診断「A+」を狙う)
- AWS EC2でサーバを構築 5 - MySQL + phpMyAdmin
- AWS EC2でサーバを構築 6 - PostfixとDovecot (SSL対応とSPAM対策)
- AWS EC2でサーバを構築 7 - セキュリティ対策
概要
サーバアプリケーションを中心に各種インストールを行います。
設定は次回以降の記事で行います。
ApahceとSSL
ウェブサーバにNginxを使用する場合は読み飛ばしてください。
SSL証明書取得用にLet's Ecnryptのcertbot
もインストールします。
yum install httpd mod_ssl certbot
systemctl enable httpd
NginxとSSL
ウェブサーバにApacheを使用する場合は読み飛ばしてください。
EPELにもNginxはありますが、AWSなのでamazon-linux-extraからインストールします。
SSL証明書取得用にLet's Ecnryptのcertbot
もインストールします。
amazon-linux-extras install nginx1
yum install certbot
systemctl enable nginx
PHP-FPMとモジュール
Apache Event MPM、またはNginxで動かすためモジュール版PHPは使いません。
amazon-linux-extras install php7.3
yum install php-opcache php-apcu php-mbstring php-xml php-xmlrpc php-intl php-gd php-pecl-mcrypt php-pecl-imagick-devel php-pecl-imagick php-pecl-zip ImageMagick-devel
systemctl enable php-fpm
MySQL
RHEL系でデフォルトのMariaDBは使いません。コミュニティのリポジトリからMySQLをインストールします。
yum localinstall https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
yum install mysql-community-server
systemctl enable mysqld
phpMyAdmin
EPELからのyumインストールは依存関係で失敗するため公式サイトのソースからインストールします。
cd /var/www/html/dev.netartz.com/public_html
wget https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.tar.gz
tar zxf phpMyAdmin-5.0.2-all-languages.tar.gz
rm -f phpMyAdmin-5.0.2-all-languages.tar.gz
mv phpMyAdmin-5.0.2-all-languages phpmyadmin
Postfix
インストールしなくても最初から入っています。有効化しておきます。
systemctl enable postfix
Dovecot
インストールして有効化します。
yum install dovecot
systemctl enable dovecot
Node.js
EPELのNode.jsは6系と古いので、NodeSourceからLTSな12系をインストールします。
curl -sL https://rpm.nodesource.com/setup_12.x | bash -
yum install nodejs
有効化して使用する場合は以下を実行しておきます。
systemctl enable nodejs
systemctl start nodejs
Docker
ローカルで使用することが多いですが、自分の場合はサーバ側にも必要だったため一応インストールおきます。
不要な場合はインストールしなくてOKです。インストールだけして有効化しない手もあります。
yum install docker
有効化して使用する場合は以下も実行しておきます。
systemctl enable docker
systemctl start docker
docker-compose
amazon-linux-extraのリポジトリからdocker-composeをインストールできないので手動でインストールします。
curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compo
se-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
バージョンを1.25.4と指定しているのは、ローカルの開発環境と合わせるためです。
Fail2ban / Logwatch
ログ監視とセキュリティ対策のためにインストールします。
yum install fail2ban logwatch
systemctl enable fail2ban