0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Raspberry Pi 3B+(CentOS7)でRedmineにLet's EncryptのSSL証明書を設定した覚え書き

Posted at

出来上がった環境

Raspberry Pi 3B+
CentOS Linux release 7.5.1804 (AltArch)
Apache 2.4.6
Redmine 3.4.6
Let's Encrypt証明書

Raspberry Pi 3B+ にCentOS7導入

Redhat系の方が操作に慣れているので、このあたりを参考にCentOS7を導入

Redmine 3.4.6 の導入

このあたりを参考に Redmine 3.4.6 + PostgreSQL 9.2.24 + Apache 2.4.6 の構成でRedmine環境を構築。
「http://[ドメイン名]/redmine/」でredmineへアクセスできるようにしておく。
title
いつもは、DBをMariaDB(MySQL)にしてましたが、今回は久々に建てることもあり、参考にしたサイト通りPostgreSQLを選択。

Let's Encrypt証明書の設定

EPELリポジトリ追加

yumでは追加できなかったので、/etc/yum.repos.d/epel.repo を手動で追加

/etc/yum.repos.d/epel.repo
[epel]
name=Epel rebuild for armhfp
baseurl=https://armv7.dev.centos.org/repodir/epel-pass-1/
enabled=1
gpgcheck=0

あとは、このあたりを参考に証明書を取得。

# yum install epel-release
# yum install certbot python-certbot-apache
# certbot certonly --webroot -w [DocumentRoot] -d [ドメイン名]

Congratulations!とメッセージが出れば成功。


[中略]

IMPORTANT NOTES:
Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/[ドメイン名]/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/[ドメイン名]/privkey.pem
   Your cert will expire on YYYY-MM-DD. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot
   again. To non-interactively renew *all* of your certificates, run
   "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

一応確認してみるとこんな感じになってます。

# ls -l /etc/letsencrypt/live/[ドメイン名]/
合計 4
-rw-r--r-- 1 root root 682  M月  D hh:mm README
lrwxrwxrwx 1 root root  36  M月  D hh:mm cert.pem -> ../../archive/[ドメイン名]/cert1.pem
lrwxrwxrwx 1 root root  37  M月  D hh:mm chain.pem -> ../../archive/[ドメイン名]/chain1.pem
lrwxrwxrwx 1 root root  41  M月  D hh:mm fullchain.pem -> ../../archive/[ドメイン名]/fullchain1.pem
lrwxrwxrwx 1 root root  39  M月  D hh:mm privkey.pem -> ../../archive/[ドメイン名]/privkey1.pem

Apacheへの設定

/etc/httpd/conf.d/ssl.confを編集
あらかじめローカル証明書の設定が入っていたので下記の通り変更

#   Server Certificate:
-SSLCertificateFile /etc/pki/tls/certs/localhost.crt
+SSLCertificateFile /etc/letsencrypt/live/[ドメイン名]/cert.pem
 
 #   Server Private Key:
etc.)
-SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
+SSLCertificateKeyFile /etc/letsencrypt/live/[ドメイン名]/privkey.pem
 
 #   Server Certificate Chain:
-#SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt
+SSLCertificateChainFile /etc/letsencrypt/live/[ドメイン名]/chain.pem

Apacheを再起動

# systemctl restart httpd

ブラウザからRedmineへアクセスして証明書を確認

https://[ドメイン名]/redmine/

発行元が「Let's Ecnrypt Authority X3」となっている。
encrypt.png

Redmineの設定

[管理]→[設定]→[全般]のプロトコルをHTTPからHTTPSへ変更

memo

certbotで証明書取得で失敗した時は以下を確認

  • OSやルータでポート開放されているか
  • DocmentRootの指定があっているか
  • DocmentRootへのアクセス権設定
  • 何度も失敗してtoo many ~ とエラーが出た時はあきらめて、時間をおいてから実施
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?