CentOSを無料でHTTPS・オレオレ証明書【自己署名所】でSSL化する方法!

スポンサーリンク
050-VBA

CentOSでサーバーを立ててWordPressを動かし、無料のプラグインでなんとか簡易予約システムを動かせないかと悪戦苦闘している管理人です。

なかなかうまくいきません。

さて、今回は自己証明書(オレオレ)証明書でとりあえず・・・

SSL化にトライしてみまたので忘備録として掲載しておきます。

必要なファイルをダウンロードして解凍

まずは必要なファイルをダウンロードします。

サギョウディレクトリの異動(どこでも良いと思う?)

cd  /etc/httpd/conf

とりあえず面倒なので、このディレクトリにしました。

openssl-1.1.1gをダウンロード

wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz

その他必要なモジュールをダウンロード

yum -y install perl perl-Test-Simple perl-Test-Harness gcc

解凍

tar -zxf openssl-1.1.1g.tar.gz

ディレクトリを移動

cd  /etc/httpd/conf/openssl-1.1.1g

スクリプトの実行・コンパイル

スクリプトを実行します。

./config --openssldir=/etc/httpd/conf/ssl

コンパイルしてインストールします。

make depend
make
make test	'エラーが無いことを確認
make install
yum -y install openssl

インストール状況を確認します。

ls -l /etc/httpd/conf/openssl-1.1.1g/

ライブラリを確認します。

ldconfig -p | grep -i libssl

特にエラーが出なければOKです。

エラーが出る場合はやり直してください。

mod_sslをインストールする

mod_sslをインストールします。

yum- y install mod_ssl
スポンサーリンク

ファイルを作って確認する

winscpで次のファイル作ります。

/etc/ld.so.conf.d/openssl-1.1.1g.conf

ファイルの中身は次のとおりです。

/etc/httpd/conf/openssl-1.1.1g/

ライブラリを確認します。

ldconfig
ldconfig -p | grep -i libssl

ライブラに次の行が表示されればOKです。

/etc/httpd/conf/openssl-1.1.1g/

opensslのバージョンを確認します。

openssl version

バージョンが表示されればOKです。

証明書(鍵ペア・CSR)の作成

証明書(鍵ペアとCSR)を作成します。

ディレクトリを移動

cd /etc/httpd/conf

umaskコマンドで数字を確認する(表示された番号をメモっておくこと)

管理人の環境では【0022】でした

umask

鍵ペアを作成する

openssl genrsa -des3 -out servername.key 2048

パスワードを求められるので入力する(忘れないこと)

スポンサーリンク

ディレクトリ内に【servername.key】ができる

鍵ペアのパスフレーズを解除する場合は次のコマンド

openssl rsa -in <パスフレーズ付き秘密鍵> -out <出力先ファイル名>

CSRを作成する

openssl req -new -key servername.key -out servername.csr -sha256

対話形式で質問されるので入力する

  • countryname → JP
  • State of Province Name → 都道府県名(*** pref)など
  • Locality Name → 市区町村(*** shi)など
  • Organaization name  →  企業名
  • Common name  → サーバーのURL(FQDN)
  • 以降は空白でもOK

ブログランキングにご協力ください!
ブログランキング・にほんブログ村へ

ディレクトリ内に【servername.csr】ができる

次のコマンドでオレオレ証明書を作成する

openssl x509 -req -signkey servername.key < servername.csr > servername.crt

証明書をインストール

apacheのインストール先を確認する

ps aux | grep httpd

ディクレトリを移動(管理人のテスト環境の場合)

cd /usr/sbin

apacheの動作を確認

apachectl -t

エラーが表示されなければよい

/etc/httpd/conf/httpd.confの設定変更

# LoadModule foo_module modules/mod_foo.so
の下に次の行を追加
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
LoadModule ssl_module modules/mod_ssl.so

/etc/httpd/conf.d/ssl.confの設定変更

SSLCertificateFile /etc/httpd/conf/servername.crt	'サーバー証明書
SSLCertificateKeyFile /etc/httpd/conf/servername.key '鍵ペア

/etc/httpd/conf/httpd.conf に次の行を追加

SSLUseStapling On
SSLStaplingCache "shmcb:logs/ssl_stapling(32768)"

apacheの再起動

apacheのディレクトリに移動

cd /usr/sbin

apacheの再起動

apachectl stop
apachectl start

httpd.confの確認

cd /usr/sbin
apachectl configtest

【Syntax OK】が表示されればよい

ファイアウオールのポートを開ける

firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

httpsでアクセスできればOK

ブログ開設に必要なドメイン取得、サーバーレンタル、ASPの登録等は、こちらのサイトから!

コメント

タイトルとURLをコピーしました