Amazon Web Services 基礎からのネットワーク&サーバー構築
https://gyazo.com/af4f607caf821db7738cea85331bd6c8
AWSの写経用に購入した入門書。Kindle版。インターネット周辺の解説も盛り込まれているため中級者以上の読者には若干冗長な部分もあるが、AWSの基本を理解する上で無駄がないコンパクトな良書だと思う。
以下は各CHAPTERごとのメモ書きである。
CHAPTER1
CHAPTER2
既存のルートテーブルはVPC領域全体に設定されているデフォルトのルートテーブルのため変更してはならない
パブリックサブネットには新しく作成したルートテーブルを割り当てる
CHAPTER3
EC2は停止すると課金対象から外れるが、EC2に紐づくEBSはインスタンス停止後も容量を確保しているため課金対象となる
code:lsof
# どのポート番号でどのプログラムが待ち受けているか Location 881
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
rpcbind 2678 rpc 6u IPv4 16557 0t0 UDP *:111
rpcbind 2678 rpc 7u IPv4 16558 0t0 UDP *:732
rpcbind 2678 rpc 8u IPv4 16559 0t0 TCP *:111 (LISTEN)
rpcbind 2678 rpc 9u IPv6 16560 0t0 UDP *:111
rpcbind 2678 rpc 10u IPv6 16561 0t0 UDP *:732
rpcbind 2678 rpc 11u IPv6 16562 0t0 TCP *:111 (LISTEN)
chronyd 2695 chrony 1u IPv4 17169 0t0 UDP 127.0.0.1:323
chronyd 2695 chrony 2u IPv6 17170 0t0 UDP ::1:323 dhclient 2904 root 6u IPv4 17744 0t0 UDP *:68
master 3146 root 13u IPv4 18929 0t0 TCP 127.0.0.1:25 (LISTEN)
sshd 3283 root 3u IPv4 20519 0t0 TCP *:22 (LISTEN)
sshd 3283 root 4u IPv6 20528 0t0 TCP *:22 (LISTEN)
sshd 3428 root 3u IPv4 22008 0t0 TCP 10.0.1.10:22->131.213.63.201:57014 (ESTABLISHED)
sshd 3446 ec2-user 3u IPv4 22008 0t0 TCP 10.0.1.10:22->131.213.63.201:57014 (ESTABLISHED)
CHAPTER4
code:Special character <E2>
# 特殊文字問題
$ sudo systemctl list-dependencies
<E2><97><8F> <E2><94><9C><E2><94><80>display-manager.service
<E2><97><8F> <E2><94><9C><E2><94><80>network.service
<E2><97><8F> <E2><94><9C><E2><94><80>systemd-readahead-collect.service
<E2><97><8F> <E2><94><9C><E2><94><80>systemd-readahead-replay.service
<E2><97><8F> <E2><94><9C><E2><94><80>systemd-update-utmp-runlevel.service
<E2><97><8F> <E2><94><94><E2><94><80>multi-user.target
<E2><97><8F> <E2><94><9C><E2><94><80>acpid.service
# 特殊文字問題を解決するために以下の環境変数をセット
$ export LESSCHARSET=utf-8
# 現在の環境変数を保持してコマンドを再実行
$ sudo -E systemctl list-dependencies
default.target
● ├─display-manager.service
● ├─network.service
● ├─systemd-readahead-collect.service
● ├─systemd-readahead-replay.service
● ├─systemd-update-utmp-runlevel.service
● └─multi-user.target
● ├─acpid.service
● ├─amazon-ssm-agent.service
● ├─atd.service
● ├─auditd.service
CHAPTER5
code:telnet
brew install telnet
CHAPTER6
ping は ICMP (Internet Control Message Protocol) を用いるため、ICMPが通るようセキュリティグループにICMPルールを追加する必要がある
CHAPTER7
Public SubnetにNATゲートウェイを配置
稼働時間と転送量の両方で課金されるため、まったく通信していなくても料金が発生する
なので不要となったら削除する
code:/etc/environment
Centos warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
vi /etc/environment
add these lines...
LANG=en_US.utf-8
LC_ALL=en_US.utf-8
CHAPTER8
DB Server & WordPress setup
code:mysql-install
$ sudo yum remove mariadb-libs
$ sudo rm -rf /var/lib/mysql
$ sudo yum install mysql-community-server
$ mysqld --version
$ sudo systemctl start mysqld.service
$ sudo systemctl enable mysqld.service
# 初期パスワード確認
$ sudo cat /var/log/mysqld.log | grep password
code:mysql-setup
$ mysql_secure_installation
$ mysql -uroot -p
mysql> create database wordpress default character set utf8 COLLATE utf8_general_ci;
mysql> set global validate_password_length=6; # 文字列の長さを変更
mysql> set global validate_password_policy=LOW; # ポリシーを変更
mysql> grant all on wordpress.* to wordpress@"%" identified by 'wordpresspasswd';
mysql> flush privileges;
mysql> select user, host from mysql.user;
code:wordpress-setup
# on the web server
$ sudo yum -y install php php-mysql php-mbstring
$ sudo yum -y mysql
$ mysql -h10.0.2.10 -uwordpress -p
$ cd
$ tar xzvf latest-ja.tar.gz
$ cd wordpress
$ sudo cp -r * /var/www/html
$ sudo chown apache:apache /var/www/html -R
$ sudo systemctl restart httpd
サーバーの PHP バージョンは 5.4.16 ですが WordPress 5.2.2 は 5.6.20 以上のみでご利用になれます。
なので以下の記事を参考に php 7.3 をインストール
code:php 7.3
$ sudo yum -y remove php php-mysql php-mbstring
$ sudo amazon-linux-extras install php7.3 -y
$ sudo systemctl start php-fpm
$ sudo systemctl enable php-fpm
完成品
https://gyazo.com/b2623eca134cb59937c58be5cc2ae6df
CHAPTER9
TCP/IPの解説
Appendix A
Wiresharkでパケットキャプチャ
Appendix B
code:traceroute
$ traceroute www.aws.com
traceroute to www.aws.com (13.249.171.74), 30 hops max, 60 byte packets
1 ec2-175-41-192-214.ap-northeast-1.compute.amazonaws.com (175.41.192.214) 21.880 ms ec2-175-41-192-218.ap-northeast-1.compute.amazonaws.com (175.41.192.218) 12.721 ms 12.738 ms
2 100.66.8.104 (100.66.8.104) 14.830 ms 100.66.8.36 (100.66.8.36) 15.475 ms 100.66.8.40 (100.66.8.40) 14.795 ms
3 100.66.11.168 (100.66.11.168) 12.955 ms 100.66.11.98 (100.66.11.98) 21.873 ms 100.66.10.228 (100.66.10.228) 20.896 ms
4 100.66.6.139 (100.66.6.139) 20.030 ms 100.66.7.111 (100.66.7.111) 20.051 ms 100.66.6.69 (100.66.6.69) 18.274 ms
5 100.66.4.43 (100.66.4.43) 18.152 ms 100.66.4.63 (100.66.4.63) 18.140 ms 100.66.4.81 (100.66.4.81) 20.989 ms
6 100.65.11.33 (100.65.11.33) 0.721 ms 100.65.9.161 (100.65.9.161) 0.355 ms 100.65.9.129 (100.65.9.129) 0.448 ms
7 27.0.0.73 (27.0.0.73) 0.669 ms 27.0.0.159 (27.0.0.159) 2.740 ms 52.93.250.19 (52.93.250.19) 1.748 ms
8 52.95.31.73 (52.95.31.73) 0.892 ms 52.95.31.79 (52.95.31.79) 4.271 ms 52.95.31.73 (52.95.31.73) 0.945 ms
9 52.93.250.211 (52.93.250.211) 0.892 ms 52.93.250.217 (52.93.250.217) 0.844 ms 52.93.250.211 (52.93.250.211) 0.597 ms
10 100.64.50.253 (100.64.50.253) 16.503 ms 16.110 ms 16.074 ms
11 100.64.50.87 (100.64.50.87) 16.054 ms 100.64.50.103 (100.64.50.103) 14.839 ms 100.64.50.17 (100.64.50.17) 14.822 ms
12 100.64.50.254 (100.64.50.254) 1.209 ms 0.449 ms 0.658 ms
13 100.93.4.70 (100.93.4.70) 1.450 ms 100.93.4.6 (100.93.4.6) 2.216 ms 100.93.4.70 (100.93.4.70) 1.089 ms
14 100.93.4.3 (100.93.4.3) 2.501 ms 100.93.4.67 (100.93.4.67) 1.515 ms 100.93.4.3 (100.93.4.3) 1.500 ms
15 server-13-249-171-74.nrt12.r.cloudfront.net (13.249.171.74) 0.415 ms 0.485 ms 0.371 ms