Let’sEncryptを使用してLEMPスタックに無料のSSL証明書をインストールする



問題を排除するために楽器を試してください

Let’s Encryptは、インターネットセキュリティ研究グループによって提供されるLinux Foundation Collaborative Project、オープン認証局です。ドメイン名を所有している人なら誰でも無料で、Let’sEncryptを使用して信頼できる証明書を取得できます。更新プロセスを自動化する機能、およびインストールと構成を容易にするための作業。サイトを安全に保ち、TLSセキュリティ慣行を前進させるのに役立ちます。すべての証明書を公に検査できるようにして、透明性を維持します。他の人が自分の発行および更新プロトコルをオープンスタンダードとして使用できるようにします。



基本的に、Let’s Encryptは、営利組織のために、大規模な組織によるばかげたフープに依存しないセキュリティを実現しようとしています。 (私はオープンソースを信じていると言えますが、これは最高の状態でオープンソースです)。



パッケージをダウンロードしてリポジトリからインストールするか、letsencryptから直接certbot-autoラッパー(以前のletsencrypt-auto)をインストールするかの2つのオプションがあります。



リポジトリからダウンロードするには

sudo apt-get installletsencrypt -y

インストールが完了したら、証明書を取得しましょう。 certonlyスタンドアロン方式を使用しており、証明書を取得するためだけにサーバーのインスタンスを生成します。



sudo Letsencrypt certonly –standalone –d example.com -d subdomain.example.com -d othersubdomain.example.com

ssl1

メールアドレスを入力して、利用規約に同意してください。これで、入力したドメインとサブドメインのそれぞれに適した証明書ができました。各ドメインとサブドメインはチャレンジされるため、サーバーを指すDNSレコードがない場合、リクエストは失敗します。

プロセスをテストする場合は、実際の証明書を取得する前に、certonlyの後に引数として–test-certを追加できます。注:–test-certは無効な証明書をインストールします。これは何度でも実行できますが、ライブ証明書を使用する場合はレート制限があります。

ssl2

ワイルドカードドメインはサポートされておらず、サポートされる予定もありません。与えられた理由は、証明書プロセスが無料であるため、必要な数だけ要求できるためです。また、同じ証明書に複数のドメインとサブドメインを含めることができます。

新しく取得した証明書を使用するためにNGINXの構成に移動します!証明書へのパスには、正規表現ではなく実際のパスを使用します。

SSLがあり、すべてのトラフィックをSSLにリダイレクトすることもできます。最初のサーバーセクションはまさにそれを行います。サブドメインを含むすべてのトラフィックをプライマリドメインにリダイレクトするように設定しました。

2016-05-16_122009

Chromeを使用していて、上記のssl暗号を無効にしない場合、err_spdy_inadequate_transport_securityが発生します。また、gzipのセキュリティ上の欠陥を回避するには、nginxconfファイルを次のように編集する必要があります。

2016-05-16_122647

ssl3

アクセスが拒否されたなどの問題が発生した場合は、server_name(およびroot)が正しいことを再確認する必要があります。気絶するまで壁に頭をぶつけ終わったところです。幸いなことに、私のサーバーの悪夢の中で、答えが出てきました。ルートディレクトリを設定するのを忘れていました。血まみれで殴打されて、私は根を入れました、そしてそれは私の素敵なインデックスです。

個別のサブドメインを設定したい場合は、

2016-05-16_122342

ユーザー名のパスワードを作成するように求められます(2回)。

sudo service nginx restart

これで、ユーザー名とパスワードを使用してどこからでも、またはローカルで使用せずにサイトにアクセスできるようになります。常にパスワードチャレンジを行いたい場合は、allow10.0.0.0 / 24を削除してください。 #ローカルネットワーク回線に変更します。

auth_basicの間隔に注意してください。正しくない場合は、エラーが発生します。

パスワードを間違えると、403に見舞われます。

ssl4

最後に行う必要があるのは、SSL証明書の自動更新を設定することです。

このため、単純なcronジョブがジョブに適したツールであり、権限エラーを防ぐためにrootユーザーとして配置します。

(sudo crontab -l 2> / dev / null; echo ‘0 0 1 * * letsencrypt renew’)| sudo crontab –

/ dev / nullを使用する理由は、crontabが以前に存在していなくても、確実にcrontabに書き込めるようにするためです。

読んだ3分