VICS FACTORY

WORKSTATION     SERVER     NETWORK     WINDOWS     LINUX

 

HOME

 

My Server

まず始めに

Linuxの操作

Fedora13

SSHD

MySQL

MySQLコマンド

Apache+PHP

VSFTPD

NTPD

Postfix

Samba

WebDAV

SSLクライアント認証

設定変更

 

PC Support

スパイウェア対策
(Spybot)

バックアップのススメ
(RealSync)

 

VIC'S FACTORY

vic@vicsfactory.com

 

VIC PRESS

(WordPressでブログ)

SSLクライアント認証

SSLクライアント認証システムを構築して、メンバー専用ページ等でログインできる対象をクライアント証明書がインポートされたブラウザからのみに限定します。これにより、SSL暗号化+パスワード認証にプラスしてクライアント証明書認証が加わり、例えID・パスワードを 盗聴・解析されてもクライアント証明書のないパソコンからはログインできなくなります。

 

 

mod_sslインストール(Webサーバー間の通信を暗号化するためにmod_sslをインストールします)

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

 

サーバー(セキュリティ)証明書・秘密鍵を作成

[root@vics1 ~]# cd /etc/pki/tls/certs/

 

サーバー証明書の有効期限を10年に変更

[root@vics1 ~]# sed -i 's/365/3650/g' Makefile

 

[root@vics1 ~]# make server.crt

Enter pass phrase:     ←  サーバー秘密鍵のパスワード(任意)を入力(表示はされません)

Verifying - Enter pass phrase:   ← パスワード再入力(表示はされません)

 

Enter pass phrase for sever.key:  ← 上のパスワードを入力

 

Cuntory Name (2 letter code) [GB]:JP   ← 国名(JP)入力

State or Province Name (full name) [Berkshire]:Tokyo   ← 都道府県名入力

Locality Name (eg, city) [Newbury]:Minato   ← 市区町村名入力

Organization Name (eg, company) [My Company Ltd]:sample.com   ← 組織名(サーバー名で可)入力

Organization Unit Name (eg, section) []:   ← 何も入力せず[Enter]

Common Name (eg, your name or your server's hostname) []:sample.com   ← サーバー名入力

Email Address []:admin@sample.com   ← 管理者メールアドレス入力

 

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

(これをしないとサーバー起動時にその都度パスワードの入力を求められます)

[root@vics1 ~]# openssl rsa -in server.key -out server.key

Enter pass phraze for server.key:   ← 上のパスワード入力

writing RSA key

 

クライアント証明書インポートファイル(PKCS#12形式ファイル)の作成

[root@vics1 ~]# cd /etc/pki/tls/certs/

 

[root@vics1 ~]# openssl pkcs12 -export -clcerts -inkey server.key -in server.crt -out vic_client.p12

(最後の「vic_client.p12」の「vic_client」の部分はファイル名ですので適当に変えてください)


Enter pass phrase for server.key: ← 秘密鍵のパスフレーズを入力
Enter Export Password: ← PKCS#12形式の証明書を取り出すときのパスフレーズを入力
Verifying - Enter Export Password: ← 上記と同じパスワードを入力

これで「vic_client.p12」が作成されます。このファイルを使ってクライアント証明書をインポートしますのでFTP等でWindowsPCに移動しておきます。

 

SSLの設定

[root@vics1 ~]# vi /etc/httpd/conf.d/ssl.conf

 

DocumentRoot "/home/vic/html/member" ← 認証用サイトのディレクトリを指定

ServerName vicsfactory.com:443 ← ドメイン名とSSLで使うポートを指定

 

「SSLCertificateFile」・「SSLCertificatekeyFile」・「SSLCACertificateFile」・「SSLVerifyClient require」

の記述部分を探して以下の通り修正

SSLCertificateFile /etc/pki/tls/certs/server.crt

SSLCertificatekeyFile /etc/pki/tls/certs/server.key

SSLCACertificateFile /etc/pki/tls/certs/server.crt

SSLVerifyClient require ← #オフ

 

SSL設定の反映

[root@vics1 ~]# /etc/rc.d/init.d/httpd reload

※以上でSSLの設定は完了です。ルーターでTCP:443番をサーバーに振るように設定してください。

 

BASIC認証用ユーザ・パスワードの登録

ユーザーの登録(vic)

[root@vics1 ~]# htpasswd -b -c /etc/httpd/conf/.htpasswd vic パスワード

 

.htaccessファイルの作成(各ユーザ専用フォルダ用)例:vic

[root@vics1 ~]# vi /home/vic/html/member/.htaccess

SSLRequireSSL

AuthUserFile /etc/httpd/conf/.htpasswd

AuthGroupFile /dev/null

AuthName "Secret Page"

AuthType Basic

Require valid-user

以上でSSLクライアント認証システムの設定は完了です。

 

 

WindowsPCにクライアント証明書をインポート

 

●Windows7の場合

 

1.「vic_client.p12」をダブルクリック

 

2.「証明書のインポートウィザード」→そのまま「次へ」

 

3.「インポートする証明書ファイル」→そのまま「次へ」

 

4.「パスワード」→パスワードを入力して「次へ」

 

5.「証明書ストア」→そのまま「次へ」

 

6.「証明書のインポートウィザードの完了」→「完了」

 

7.「新しい秘密交換キーをインポートします」→「OK」

 

8.「正しくインポートされました」→「OK」

 

以上で証明書のインポートは完了です。

 

会員サイトの表示

 

1.ブラウザを起動し、アドレス欄にLAN内の場合は「https://192.168.1.100(サーバーのプライベートIP)/member/」を入力

 

2.「Windowsセキュリティ画面」で先ほどインポートした証明書を選択して「OK」

 

3.「キーを使用するためのアクセス許可の要求」画面で「アクセス許可の付与」を選択して「OK」

 

4.「セキュリティの警告」で「はい」

 

5.ユーザー名・パスワードを入力して「OK」

 

以上でssl.confで設定したメンバーページが表示されます。あとは許可するメンバーのパソコンに「vic_client.p12」を使ってクライアント証明書をインポートしてください。(インポートが完了したら「vic_client.p12」は必ず削除してください)

 

※クライアント証明書インポートファイル(vic_client.p12)は外部に流出しないように厳重に管理してください。

 

 

 

 

このページのTOPへ

 

Copyright (C) 2001 VICS FACTORY All rights reserved.