bookmark_borderLet’s Encrypt自動更新

定期的に手動で更新してたけど、面倒くさくなったので自動更新を設定した。

参考にしたのはこちらのサイト。

Cronという仕組みを使うらしい。
まずは以下のコマンドを入力して、自動実行の設定ファイルを開く。

vi /etc/crontab

ここに設定を追記することで、コマンドを自動実行してくれるらしい。
参考にしたサイトでは毎日実行するようにしているが、私は毎月実行するように設定することにした。

Cronの日時指定については、このサイトを参考にして作成。

https://www.yoheim.net/blog.php?q=20190902

記入した設定はこちら。

0 3 1 * * root /usr/bin/cetbot renew

おそらくこれで毎月1日 3:00に更新コマンドを実行するはず。

もしこれでできてなかったら、追記します。

bookmark_borderLet’s Encrypt更新

有効期限が残り30日を切ったので、更新しました。

参考にしたサイトは、以前Let’s Encryptを導入した際と同じサイトです。
過去の記事にサイトのリンク貼ってます。

https://knowledge.sakura.ad.jp/10534/

管理者権限でSSHにログインして、下のコマンドを実行。

certbot renew

何行かぶわーっと英文が表示された後、最後はこのような文が表示されました。

 

再度コマンドを実行すると、まだ更新できないよ~といった文の後にこのように表示されました。

今は手動で更新してるけど、いつか自動更新を導入したいところ。
(いつかっていつだろう・・・)

bookmark_borderNode.jsのSSL化

Node.jsで立てたhttpのサーバーをhttpsで接続できるようにするため色々調べたところ、

https://kennejs.com/entry/2019/01/19/074529

このサイトを参考にすることで無事SSL化に成功した。

 

ドメインも取得していたし、SSL証明書もネコでもわかる!さくらのVPS講座 ~第六回「無料SSL証明書 Let’s Encryptを導入しよう」を参考にLet’s Encryptで取得していたので、Node.jsのアプリケーションを修正だけでできた。

 

const https = require('https');
option = {
  key: fs.readFileSync('/etc/letsencrypt/live/(独自ドメイン)/privkey.pem'),
  cert: fs.readFileSync('/etc/letsencrypt/live/(独自ドメイン)/cert.pem'),
  ca: fs.readFileSync('/etc/letsencrypt/live/(独自ドメイン)/chain.pem')
}

まずはこのコードを追記。私の場合「fs」をrequireしていなかったので、この上にさらに

const fs = require('fs');

を追記。

 

const server = http.createServer(app).listen(3000);
let io2 = io.listen(server);

としていたところを

const server = https.createServer(option, app).listen(3000);
let io2 = io.listen(server);

に変更。

 

これで無事にSSL化に成功。