このWebサイト ひつじ帳 は、管理者がWEB関連の技術をまとめた備忘録サイトです。 Linux,CentOS,PHP,MySQL,Blogger,JavaScript,CSS について記録しています。

CentOS/Apache/mod_SSL 通信内容暗号化

[ CentOS/Apache ]

mod_ssl 確認・インストール

インストール確認


[user@linux ~]# yum list | grep mod_ssl
[user@linux ~]# mod_ssl.i386                   1:2.2.3-11.e15.centos  installed ←■ インストール済み

インストールされていない場合は、インストールする

インストール


[root@linux ~]# yum -y install mod_ssl
[root@linux ~]#

Webサーバ SSL設定

サーバ用秘密鍵・証明書作成


[root@linux certs]# cd /etc/pki/tls/certs/ ←■ ディレクトリ移動
[root@linux certs]# cp -a Makefile Makefile.org ←■ Makefile ファイルをバックアップ
[root@linux certs]# sed -i 's/365/3650/g' Makefile ←■ サーバ用証明書有効期限を1年から10年に変更
[root@linux certs]# make server.crt ←■ サーバ用秘密鍵・証明書作成
umask 77 ; \
        /usr/bin/openssl genrsa -des3 1024 > server.key
Generating RSA private key, 1024 bit long modulus
.................................++++++
.....................................++++++
e is 65537 (0x10001)
Enter pass phrase: ←■ 任意のパスワードを入力 ※表示はされない
Verifying - Enter pass phrase: ←■ 任意のパスワードを入力(確認) ※表示はされない
umask 77 ; \
        /usr/bin/openssl req -utf8 -new -key server.key -x509 -days 3650 -out server.crt -set_serial 0
Enter pass phrase for server.key: ←■ 上記で応答したパスワードを入力 ※表示はされない
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:JP ←■ 国名を入力
State or Province Name (full name) [Berkshire]:Osaka ←■ 都道府県名を入力
Locality Name (eg, city) [Newbury]:Osaka ←■ 市区町村名を入力
Organization Name (eg, company) [My Company Ltd]:Example ←■ サイト名(何でも良い)を入力
Organizational Unit Name (eg, section) []: ←■ 空 Enter
Common Name (eg, your name or your server's hostname) []:example.jp ←■ ホスト名を入力
 Email Address []:hostmaster@example.jp ←■ 管理者メールアドレスを入力
[root@linux certs]#

サーバー用秘密鍵からパスワード削除

これをやっとかないと、Apache再起動時に毎回パスワードの入力を求められます。

[root@linux ~]# cd /etc/pki/tls/certs/
[root@linux certs]# openssl rsa -in server.key -out server.key
Enter pass phrase for server.key:   ←■ 登録したパスワードを入力して [Enter]
writing RSA key
[root@linux certs]#

SSL設定ファイル編集


[root@linux ~]# cp -a /etc/httpd/conf.d/ssl.conf /etc/httpd/conf.d/ssl.conf.org
[root@linux ~]#
[root@linux ~]# vi /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/pki/tls/certs/localhost.crt
↓■ 変更 サーバー用証明書を指定
SSLCertificateFile /etc/pki/tls/certs/server.crt 

SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
↓■ 変更 サーバー用秘密鍵を指定
SSLCertificateKeyFile /etc/pki/tls/certs/server.key

※ SSL用VirtualHost設定
##
## SSL Virtual Host Context
##

NameVirtualHost *:443 ←■ VirtualHostを有効にする
<VirtualHost _default_:443>

# General setup for the virtual host, inherited from global configuration
#DocumentRoot "/var/www/html"
↓■ コメントアウト外して変更 ドキュメントルートを指定
DocumentRoot "/home/apache/public_html" ←■ デフォルトのドキュメントルート
#ServerName www.example.com:443
ServerName localhost:443 ←■ デフォルトのサーバ名

:wq ←■ 保存して閉じる
[root@linux ~]#

0 件のコメント:

人気記事

アーカイブ

このブログを検索