Let’s EncryptのSSL証明は有効期限が90日と短期ですが、商用・非商用どちらでも無償利用が可能です。
取得に必要なツールも用意されているので、とくにVPSなどTELNETやSSH接続可能な環境のWEBサーバーを利用している場合にはオススメのSSL証明です。
Let’s Encryptは2015年9月からベータ版の運用が開始され、2016年4月より正式サービスが開始されたばかりのSSL証明書発行機関です。
2015年9月からの翌年4月までの期間で、380万以上のウェブサイトに対して170万枚以上のSSL/TLSサーバ証明書を発行した実績もあります。
Let’s EncryptのSSL証明書がもつ最大のメリットは『無償』であることと、『更新を自動化できる』という点にあります。
一般的なSSLの有効期限は12ヶ月ですが、Let’s Encryptは90日です。
WEBサーバーの管理者であれば「年4回もやりたくない」と思うかもしれませんが、Let’s EncryptのSSL証明更新は1コマンドで実行可能。
しかも「有効期限が30日未満になった証明書」のみが更新されるので、日時指定の自動処理(cronなど)で行うことがとても容易なのです。
どうです、便利でしょう?
無料のSSLで大丈夫なのか?という不安もあるかもしれませんが、そこはまったく安全です。
Let’s Encryptの「SSL/TLSサーバ証明書」は、アメリカ合衆国大手認証局(CA)である IdenTrust 社のルート証明書からチェーンできるクロスルート証明書です。IdenTrust 社の証明書(DST Root CA X3)によって、中間証明書「Let’s Encrypt Authority X3」、および予備の中間証明書「Let’s Encrypt Authority X4」に対するクロス署名が行われています。
そのため、Let’s Encrypt 発行の証明書は、大手認証局(CA)が有償で販売している証明書と同様に、ほとんどのWebブラウザやOSが標準で対応しています。
引用:https://letsencrypt.jp/#CompatibleBrowser
実際にこのブログへ導入して、様々なブラウザから確認していますが、ここ数年に販売されたハードウェアと、そこで動かせる最新OSとの組み合わせであれば何も問題なくSSL暗号化通信が確認できています。
下のスクリーンショットはこのブログの証明書ですが、有償のSSLと比較しても目立った違いはないのでまったく問題ありません。
もちろんTLS1.2が利用できるように実装しています。
Let’s Encryptでの証明書作成はVPSなどでのサーバ内作業に多少慣れている人ならとても簡単。
ApacheやnginxなどのhttpサービスをGoogleで調べながらでも構築できた人ならまちがいなく作ることができます。
作り方はLet’s Encryptの公式ページにある手順が最新&安全&親切です。
必要なプログラムはすべてyumでインストール可能ですし、証明書発行に必要な情報はドメインとメールアドレスだけ。
SSLは最初の設定こそ面倒なのですが、以下がこのブログで設定しているnginx用設定情報になります。
# SSL(443)およびhttp/2対応 listen 443 ssl http2; # Let’s Encryptで発行した証明書ファイル # nginxはfull chainを証明書に定義します # liveフォルダならシンボリックファイルなので更新時の書き換えが不要です ssl_certificate /etc/letsencrypt/live/mag.torumade.nu/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/mag.torumade.nu/privkey.pem; # SSLプロトコルはTLS1 TLS1.2 TLS1.2のみ ssl_protocols TLSv1.2 TLSv1.1 TLSv1; # 暗号化スイートはMozilla準拠 ssl_prefer_server_ciphers on; ssl_ciphers ECDHE+RSAGCM:ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK; # 暗号化スイートにDH鍵交換を必要とするものが含まれるので作成 # 作成方法 # mkdir /etc/nginx/conf.d/SSL # openssl dhparam 2048 -out /etc/nginx/conf.d/SSL/dhparam.pem ssl_dhparam /etc/nginx/conf.d/SSL/dhparam.pem; # SSL通信は遅いので、少しでも早くするオマジナイ ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate /etc/letsencrypt/live/mag.torumade.nu/fullchain.pem; resolver 8.8.8.8 8.8.4.4 valid=300s; resolver_timeout 5s; # SSL通信を強制するオマジナイ add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains;';
これだけでSSLLabのスコアはA+になるので、必要十分な安全性を確保できました。
旧バージョンhttpや非Python環境でもLet’s Encryptを利用可能にする『acme.sh』
Pythonの導入が難しい環境や、公式ツールがうまく使えない方にオススメのLet’s Encrypt申請スクリプトです。WEBを無停止で申請できるので、SSL利用がより簡単になりますよ。
.htaccessのRedirectRuleでURLクエリーを含めた301リダイレクトを設定する方法
.htaccessのRedirect RuleでURLクエリーを含めた場合のサンプルが少ないようなので参考になれば。
年額790円から、3ヶ月期限であれば無料まで。個人や個人事業主にオススメのドメイン認証SSL
個人や個人事業主などの方でも導入しやすい安価なSSLのご紹介。3年契約で年額790円から、3ヶ月毎の更新手続きすれば無料で利用可能なSSLも。
iPhone7のイヤホン事情に疲れ果てたのでBluetoothイヤホン「JPRiDE JPA2 Live」に切り替えました
AAC対応ってライセンスの関係なのかお値段高めになる傾向を感じていましたが、aptX/AAC両対応で実売価格4,000円以下のカナル型イヤホンを見つけたので買ってみました。
Mac OS X 10.12 Sierra時代のNAS接続はAFP接続?それとも、SMB接続?
SierraからTime MachineでもSMB接続が可能になったと聞いて確認してみたらAFPよりもSMB推奨のような雰囲気だったので、SMBができるだけ快適に使えるようにチェックと設定をしてみました。
Googleウェブマスターツールは構造化データを重要視してるっぽいからWordPressで対応してみました
ブログってちょーっとマジメなことをやろうって思うと、なんか専門用語ばっかりでめんどくせーとか思っちゃうボクですがやってみたらできたっぽいのでそれっぽくwordpressで構造化データの対応方法まとめです。