Linux:HTTPS

HTTPS

ファイアフォールの設定

firewall-cmd –list-all で「https」が許可されていない場合、下記のコマンドを実行する。

 $ sudo firewall-cmd --add-service=https --permanent
 success
 $ sudo firewall-cmd --reload
 success
mod_ssl パッケージのインストール
$ sudo yum install mod_ssl
certbot パッケージのインストール
$ sudo yum install certbot python2-certbot-apache

※ EPELレポジトリがインストールされている必要がある。

Freenom を利用したドメイン取得

取得サイト:Freenom - A Name for Everyone

基本的には下記のサイトを参考に、取得したい文字列のドメインで登録する。

完全無料の独自ドメインを取得できるFreenomの使い方

この際に、下記2点に注意する。

  • 取得したいドメインを検索する際には「xxx.tk」のようにトップレベルドメインまで指定して検索する
  • 登録する際は、アカウントの電話番号が使われている携帯のモバイル通信を使用して操作を行う。(登録完了後はWi-fiでOK)
A(Addresss)レコードの設定

Freenom の「ターゲット」にドメインと紐づけしたいIPアドレスを入力する。

設定したアドレスがグローバルIPアドレスであれば、設定後、ブラウザにドメインを入力してアクセスできるようになる。

ローカルネットワーク内の機器のIPアドレス(192.168.xxx.xxx)を割り当てた場合、次の手順が必要となる。

hostファイルの設定(Windows)

hostファイルを設定し、登録したドメインと紐づけを行う。

エクスプローラのパス入力欄に「C:\Windows\System32\drivers\etc」を入力する。

フォルダ内の「host」ファイルのバックアップファイルを作成する。(「host.org」等の名前で)

hostファイルに下記を入力して、上書き保存する。

<Aレコードに記載のIPアドレス> <登録したドメイン>

設定後、ブラウザにドメインを入力して、期待のページが表示されていればOK

certbot コマンドの実行
$ sudo certbot certonly --manual --preferred-challenges dns -d <ドメイン名>

実行すると、メールアドレスの入力や、同意等の質問があるので、回答する。

回答後、以下のメッセージが表示される。

Please deploy a DNS TXT record under the name
_acme-challenge.<登録ドメイン> with the following value:

xxx(数十個の文字数)

Before continuing, verify the record is deployed.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Press Enter to Continue

Freenom に下記のレコード登録を行う。

Name Type TTL Target
_acme-challenge.<登録ドメイン> TXT 300 <表示文字列>

保存後、反映には時間がかかる。反映されたかどうかを確認するには、下記のコマンドを実行する。

$ sudo dig @80.80.80.80 -t TXT _acme-challenge.<登録ドメイン>

上記コマンド実行し、「ANSWER SECTION」が表示されれば、certbotコマンドの「Enter」キーを押下する。

最後に、「ongratulations! Your certificate and chain have been saved at」が表示されればOK

ssl.conf のコピー

下記のコマンドを実行し、「/etc/httpd/conf.d/ssl.conf」のバックアップファイルを作成する。

$ sudo cp /etc/httpd/conf.d/ssl.conf{,.org}
ssl.conf の編集

下記の項目を編集する。

SSLCertificateFile /etc/pki/tls/certs/localhost.crt
     ↓
SSLCertificateFile /etc/letsencrypt/live/<ドメイン>/cert.pem


SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
     ↓
SSLCertificateKeyFile /etc/letsencrypt/live/<ドメイン>/privkey.pem


SSLCertificateKeyFile /etc/letsencrypt/live/www.testdom.com/privkey.pem
   ↓
SSLCertificateChainFile /etc/letsencrypt/live/<ドメイン>/chain.pem

編集後、下記のコマンドを実行し、「Syntax OK」が表示されればOK

$ sudo httpd -t
httpd の再起動
$ sudo systemctl restart httpd

以上で、https化の設定が終わり。ブラウザにアクセスすると、URL欄が鍵マークになっていることを確認する。

コメントを入力:
 
  • Linux/HTTPS.txt
  • 最終更新: 2022/11/29 23:58
  • by 白くじら