プロジェクト

全般

プロフィール

EC2起動と停止のタイマー設定手順 » 履歴 » バージョン 2

田中 克典, 2026/08/04 04:56

1 1 田中 克典
h1. EC2起動と停止のタイマー設定手順
2 1 田中 克典
3 1 田中 克典
EC2の起動と停止をタイマーで自動化する手順
4 1 田中 克典
5 2 田中 克典
1.許可ポリシーの作成
6 2 田中 克典
 コンソールにログインし、IAM→ポリシー→ポリシーの作成
7 2 田中 克典
 ポリシーエディタをJSONモードに変更し、下記の内容を貼り付け
8 1 田中 克典
<pre>
9 2 田中 克典
{
10 2 田中 克典
  "Version": "2012-10-17",
11 2 田中 克典
  "Statement": [
12 2 田中 克典
    {
13 2 田中 克典
      "Effect": "Allow",
14 2 田中 克典
      "Action": [
15 2 田中 克典
        "ec2:StartInstances",
16 2 田中 克典
        "ec2:StopInstances"
17 2 田中 克典
      ],
18 2 田中 克典
      "Resource": "arn:aws:ec2:*:*:instance/*"
19 2 田中 克典
    }
20 2 田中 克典
  ]
21 2 田中 克典
}
22 1 田中 克典
<pre>
23 1 田中 克典
vi /etc/apt/sources.list
24 1 田中 克典
</pre>
25 1 田中 克典
<pre>
26 1 田中 克典
deb http://archive.debian.org/debian/ buster main contrib non-free
27 1 田中 克典
deb http://archive.debian.org/debian/ buster-proposed-updates main contrib non-free
28 1 田中 克典
deb http://archive.debian.org/debian-security buster/updates main contrib non-free
29 1 田中 克典
</pre>
30 1 田中 克典
<pre>
31 1 田中 克典
echo 'Acquire::Check-Valid-Until "false";' | sudo tee /etc/apt/apt.conf.d/99no-check-valid-until
32 1 田中 克典
</pre>
33 1 田中 克典
更新
34 1 田中 克典
<pre>
35 1 田中 克典
sudo apt clean
36 1 田中 克典
sudo apt update
37 1 田中 克典
</pre>
38 1 田中 克典
インストールする
39 1 田中 克典
<pre>
40 1 田中 克典
sudo apt install -y snapd
41 1 田中 克典
sudo snap install core
42 1 田中 克典
sudo snap refresh core
43 1 田中 克典
sudo snap install --classic certbot
44 1 田中 克典
sudo ln -s /snap/bin/certbot /usr/bin/certbot
45 1 田中 克典
</pre>
46 1 田中 克典
------
47 1 田中 克典
バージョンの確認
48 1 田中 克典
<pre>
49 1 田中 克典
certbot --version
50 1 田中 克典
</pre>
51 1 田中 克典
2.JPRS 用ディレクトリ作成(分離運用)
52 1 田中 克典
<pre>
53 1 田中 克典
sudo mkdir -p /etc/letsencrypt-jprs
54 1 田中 克典
sudo mkdir -p /var/lib/letsencrypt-jprs
55 1 田中 克典
sudo mkdir -p /var/log/letsencrypt-jprs
56 1 田中 克典
</pre>
57 1 田中 克典
3.JPRS ACME アカウント登録(EAB)
58 1 田中 克典
<pre>
59 1 田中 克典
sudo certbot register \
60 1 田中 克典
  --config-dir /etc/letsencrypt-jprs \
61 1 田中 克典
  --work-dir /var/lib/letsencrypt-jprs \
62 1 田中 克典
  --logs-dir /var/log/letsencrypt-jprs \
63 1 田中 克典
  -m 'admin@example.jp' \
64 1 田中 克典
  --agree-tos \
65 1 田中 克典
  --eab-kid '<JPRS_EAB_KID>' \
66 1 田中 克典
  --eab-hmac-key '<JPRS_EAB_HMAC_KEY>' \
67 1 田中 克典
  --server 'https://acme.amecert.jprs.jp/DV/getDirectory'
68 1 田中 克典
</pre>
69 1 田中 克典
4ー1.証明書の発行(Webroot 方式・通常ドメイン用)
70 1 田中 克典
<pre>
71 1 田中 克典
sudo certbot certonly \
72 1 田中 克典
  --config-dir /etc/letsencrypt-jprs \
73 1 田中 克典
  --work-dir /var/lib/letsencrypt-jprs \
74 1 田中 克典
  --logs-dir /var/log/letsencrypt-jprs \
75 1 田中 克典
  --webroot -w /var/www/html \
76 1 田中 克典
  --key-type rsa \
77 1 田中 克典
  -d example.jp -d www.example.jp \
78 1 田中 克典
  --server 'https://acme.amecert.jprs.jp/DV/getDirectory'
79 1 田中 克典
</pre>
80 1 田中 克典
4-2.証明書の発行(DNS-01 方式・ワイルドカード対応)
81 1 田中 克典
DNSテキストレコードを発行
82 1 田中 克典
<pre>
83 1 田中 克典
sudo certbot certonly \
84 1 田中 克典
  --config-dir /etc/letsencrypt-jprs \
85 1 田中 克典
  --work-dir /var/lib/letsencrypt-jprs \
86 1 田中 克典
  --logs-dir /var/log/letsencrypt-jprs \
87 1 田中 克典
  --manual \
88 1 田中 克典
  --preferred-challenges dns \
89 1 田中 克典
  --key-type rsa \
90 1 田中 克典
  -d '*.example.jp' -d example.jp \
91 1 田中 克典
  --server 'https://acme.amecert.jprs.jp/DV/getDirectory'
92 1 田中 克典
</pre>
93 1 田中 克典
発行されたTXTレコードをDNSに登録
94 1 田中 克典
DNSが設定されたら、
95 1 田中 克典
<pre>
96 1 田中 克典
dig TXT _acme-challenge.example.jp +short
97 1 田中 克典
</pre>
98 1 田中 克典
5.下記のようなファイルが生成される
99 1 田中 克典
<pre>
100 1 田中 克典
/etc/letsencrypt-jprs/live/example.jp/fullchain.pem
101 1 田中 克典
/etc/letsencrypt-jprs/live/example.jp/privkey.pem
102 1 田中 克典
</pre>
103 1 田中 克典
6.APACHEのConfigを設定する
104 1 田中 克典
<pre>
105 1 田中 克典
<VirtualHost *:443>
106 1 田中 克典
  ServerName example.jp
107 1 田中 克典
  ServerAlias www.example.jp
108 1 田中 克典
109 1 田中 克典
  DocumentRoot /var/www/html
110 1 田中 克典
111 1 田中 克典
  SSLEngine on
112 1 田中 克典
  SSLCertificateFile /etc/letsencrypt-jprs/live/example.jp/fullchain.pem
113 1 田中 克典
  SSLCertificateKeyFile /etc/letsencrypt-jprs/live/example.jp/privkey.pem
114 1 田中 克典
</VirtualHost>
115 1 田中 克典
</pre>
116 1 田中 克典
7.定期的な更新方法
117 1 田中 克典
<pre>
118 1 田中 克典
sudo certbot renew \
119 1 田中 克典
  --config-dir /etc/letsencrypt-jprs \
120 1 田中 克典
  --work-dir /var/lib/letsencrypt-jprs \
121 1 田中 克典
  --logs-dir /var/log/letsencrypt-jprs \
122 1 田中 克典
  --dry-run
123 1 田中 克典
</pre>
124 1 田中 克典
このコマンドを入れた後にHTTPDを再起動する
125 1 田中 克典
<pre>
126 1 田中 克典
service httpd restart
127 1 田中 克典
</pre>
128 1 田中 克典
これをシェルスクリプトにして、月に1回事項する
129 1 田中 克典
<pre>
130 1 田中 克典
10 1 1 * * root /home/bitnami/batchfiles/certbot-jprs.sh
131 1 田中 克典
</pre>
132 1 田中 克典
133 1 田中 克典
</pre>