さくらVPSにオレオレ証明書を設定する方法
CSR(証明書お申込みデータ)の作成|Cybertrust.ne.jp
前準備
インストール
yum install openssl *opensslのコマンド使うため yum install mod_ssl *ssl使用するため
鍵の作成
秘密鍵の作成
openssl genrsa -aes128 1024 > /etc/httpd/conf/server.key Generating RSA private key, 1024 bit long modulus ......++++++ ..++++++ e is 65537 (0x10001) Enter pass phrase: Verifying - Enter pass phrase:
CSR(Certificate Signing Request)の作成 公開鍵の作成
CSR(Certificate Signing Request)とは、SSLサーバ証明書を発行するための証明書署名要求のことです。CSRには公開鍵の情報と、組織名や所在地等の情報(Distinguished Name=識別名)が含まれており、提出されたCSRにサーバ認証機関の署名を行い、サーバ 証明書として発行します。
openssl req -new -key /etc/httpd/conf/server.key > /etc/httpd/conf/server.csr
サーバ証明書の作成
自己書名ではプライベートCAを使って、サーバ証明書(server.crt)を発行する。
・x509 :X.509形式の証明書を作成する。
・-in CSRファイル:CSRファイルを指定する。
・-days 日数 :証明書の有効期限を指定する。
・-req :入力ファイルがCSRファイルであることを明示する。
・-signkey :事故証明書作成時に使用するオプション。秘密鍵ファイルを指定する。
openssl x509 -in /etc/httpd/conf/server.csr -days 36500 -req -signkey /etc/httpd/conf/server.key > /etc/httpd/conf/server.crt
mv /etc/httpd/conf/server.key /etc/httpd/conf/server.key.bak openssl rsa -in /etc/httpd/conf/server.key.bak > /etc/httpd/conf/server.key
サーバの設定
sslのサーバ設定
追記:2017/07/29
気づくと当たり前なのだけど、、httpdのrestartが出来なくなった。
原因は、ssl.confに既存のlocalhost.keyとlocalhost.crtが残っているから。コメントアウトする必要あり。
[root@ik1-313-16875 etc]# /etc/init.d/httpd restart Stopping httpd: [ OK ] Starting httpd: [FAILED] [root@ik1-313-16875 etc]# [Sat Jul 29 16:38:39 2017] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec) [Sat Jul 29 16:38:39 2017] [error] Init: Multiple RSA server certificates not allowed /etc/httpd/conf.d/ssl.conf #SSLCertificateKeyFile /etc/pki/tls/private/localhost.key #SSLCertificateFile /etc/pki/tls/certs/localhost.crt
vi /etc/httpd/conf.d/ssl.conf <VirtualHost _default_:443>以下に SSLCertificateFile /etc/httpd/conf/server.crt SSLCertificateKeyFile /etc/httpd/conf/server.key
iptablesの設定
ファイアウォールiptablesを簡単解説~初心者でもよくわかる!VPSによるWebサーバー運用講座(4) - さくらのナレッジ
vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
service iptables restart iptables: Setting chains to policy ACCEPT: filter [ OK ] iptables: Flushing firewall rules: [ OK ] iptables: Unloading modules: [ OK ] iptables: Applying firewall rules: [ OK ]
httpd再起動
service httpd restart