CentOSでletsencryptで無料SSL認証書を取得する方法
[KPOP歌詞ルビ] リクエスト可能
事前準備
2018年1月以降letsencryptの設置時、Certbotがエラーで作動使えない場合の解決方法は
➔ こちらで確認して下さい。
ファイアウォールでポート番号を確認
SSL認証書が使用するポート番号がファイアウォールにより遮断されていると正常に作動しないので「/etc/sysconfig/iptable」ファイルを開けて次の内容を追加します。
- -A INPUT -p tcp --dport 8000 -j ACCEPT
- -A INPUT -p tcp --dport 8443 -j ACCEPT
必要なモジュールの確認
「/etc/httpd/conf.modules.d/00-base.conf」の設定ファイルで次のモジュールがコメントアウトされていて無効になっている場合、「#」記号を削除して下さい。
certbotのインストールに必要なモジュール
- LoadModule log_config_module modules/mod_log_config.so
- LoadModule setenvif_module modules/mod_setenvif.so
- LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
EPELのリポジトリのインストール
次のようにコマンドを実行して、EPELのリポジトリのインストールを行います。
- #yum install epel-release
LoadModule log_config_module modules/
mod_log_config.so
LoadModule setenvif_module modules/
mod_setenvif.so
LoadModule socache_shmcb_module modules/
mod_socache_shmcb.so //유사한 이름이 있으므로 잘 확인해주기
certbotのインストール
問題発生時
- 設置過程で「〇〇〇〇〇〇 : ●●●●●● not supported (known names: ). Maybe you need to load the appropriate ☆☆☆☆☆☆ (モジュール名).」のようなエラーが発生した場合は最後に書かれているモジュールがちゃんとインストールされているのか、またはコメントアウトされていないかを確認して解決できます。
letsencryptの設置と管理を自動かしてくれるクライアントソフトウェア「Certbot」の設置のため次のようにコマンドを実行します。複雑で難しかった従来のSSL/TLSサーバ証明書の取得・更新などがcertbotによりとても簡単になりました。
- #yum install python-certbot-apache
これでSSL/TLSサーバ証明書の取得のための準備は終わりです。
ドメイン別のSSL/TLSサーバ証明書を取得
SSL/TLSサーバ証明書を取得するドメイン名を入力
- #certbot --apache -d SSL/TLSサーバ証明書を取得するドメイン名
例えば「
abc.com」ドメインのSSL/TLSサーバ証明書を取得するためには次のコマンドを実行します。
- #certbot --apache -d abc.com
「
abc.com」と「
www.abc.com」ドメインは別のものとして扱われるので両方別々取得する必要があります。この場合、「certbot --apache -d
abc.com」と「certbot --apache -d
www.abc.com」のコマンドを別々に実行すると後のドメインだけが接続可能状態になってしまうので次のように2つのドメインのSSL/TLSサーバ証明書を同時に取得して下さい。
- #certbot --apache -d abc.com -d www.abc.com
連絡用メールアドレスを入力
入力して問題がない場合次のような画面が現れます。緊急時またはリニューアルの連絡のためのメールアドレスを入力してエンターキーを押して下さい。
- Saving debug log to /var/log/letsencrypt/letsencrypt.log
- Plugins selected: Authenticator apache, Installer apache
- Enter email address (used for urgent renewal and security notices) (Enter 'c' to
- cancel):
後でここで入力したメールアドレスの方へ確認のメールが届きますのでその時にはチャンとメールを開いて中のリンクをクリックして下さい。それで実存するメールアドレスという証明になります。メールの中のリンクをクリックするだけの単純な手続きで他に入力することはありません。
利用規約に同意
- Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
- -------------------------------------------------------------------------------
- Please read the Terms of Service at
- https://letsencrypt.org/documents/L... You must
- agree in order to register with the ACME server at
- https://acme-v01.api.letsencrypt.or...
- -------------------------------------------------------------------------------
- (A)gree/(C)ancel:
その次には規約に同意するのかについての質問です。letsencryptのSSLを利用するためには「同意する(Agree)」を意味する「A(大文字)」を入力すると次に進んで下さい。ここで辞めたい場合は「取り消し(Cancel)」を意味する「C(大文字)」を入力して中断できます。
メールアドレスの活用の許可
- -------------------------------------------------------------------------------
- Would you be willing to share your email address with the Electronic Frontier
- Foundation, a founding partner of the Let's Encrypt project and the non-profit
- organization that develops Certbot? We'd like to send you email about EFF and
- our work to encrypt the web, protect its users and defend digital rights.
- -------------------------------------------------------------------------------
- (Y)es/(N)o:
次にメールアドレスを「Electronic Frontier Foundation財団」と共有することに同意するかについての質問です。同意すると「Y(大文字)」、同意しない場合は「N(大文字)」を入力します。「Electronic Frontier Foundation財団」からの連絡が不必要な場合は「N」を入力してもSSL/TLSサーバ証明書の利用には問題ありません。
よくある質問
- その場合は「certbot --apache -d sample.com -d www.sample.com 」のように同時に取得するとそういう問題はなくなります。
違うドメイン動詞でも同時にSSLの取得ができますか?
- 同じディレクトリを使っているドメインならば異なるドメインでも一度で複数のドメインのSSLが取得できます。例えば「certbot --apache -d 1.sample.com -d 2.sample.com 」のようにサブドメインが違う時でも同時に取得でき、「certbot --apache -d sample1.com -d sample2.com 」のようにメインドメインが違ってもディレクトリさえ共有しているのならば問題ありません。ディレクトリが異なる場合は同時に取得できません。
ログ記録の設定
ログ記録が必要ないと思う場合は「/etc/httpd/conf.d/ssl.conf」と「/etc/letsencrypt/options-ssl-apache.conf」のログ設定を次のように修正してログを残さないように設定して下さい。
「/etc/httpd/conf.d/ssl.conf」ファイルのログ設定
- #ErrorLog logs/ssl_error_log
- #TransferLog logs/ssl_access_log
- #CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"
「/etc/letsencrypt/options-ssl-apache.conf」ファイルのログ設定
- #CustomLog /var/log/apache2/access.log vhost_combined
- #LogLevel warn
- #ErrorLog /var/log/apache2/error.log
皆さんの応援をお待ちしております。皆さんの「いいね」と「ツイート」はい大変励みになります。
[KPOP歌詞ルビ] リクエスト可能#Lets Encrypt #letsencrypt #無料SSL認証書 #取得 #更新 #管理 #Centos #7 #ファイアウォール #ポート番号 #登録 #優しい説明
➔ | SSHやFTPなどのポート番号を変える時、どの番号を使ったらいいの?へ進む | ➔ |