セキュリティー -> OpenSSL

OpenSSLのインストール及び初期設定

OpenSSLについて

・OpenSSL公式サイト
    http://www.openssl.org/

・ダウンロードサイト
    http://www.openssl.org/

    ダウンロードしたソースコード( openssl-0.9.8a.tar.gz 3.27MB 2005/10/31 )

インストール

解凍

ダウンロードしたファイル ( openssl-0.9.8.a.tar.gz ) を /usr/local/src/ にコピー
# tar zxvf openssl-0.9.6a.tar.gz   * 解凍

コンパイルとインストール

# cd /usr/local/src/openssl-0.9.8a
# ./config
# make
# make install

インストール後の設定、動作確認

openssl ファイルのパス指定

   rpmパッケージで /usr/bin/openssl が既にインストールされている場合は、
   /etc/profileファイルに以下の行を追加する。
/etc/profile
pathmunge /usr/local/ssl/bin
#which openssl
/usr/local/ssl/bin/openssl と表示されればOK

mod_sslのインストール確認

# httpd -l | grep ssl
mod_ssl.c

httpd.confの更新確認

以下の行が追加されている事を確認。
httpd.conf
<IfModule mod_ssl.c>
   Include conf/ssl.conf
</IfModule>

ssl.confの設定ファイルの確認

/usr/local/apache2/conf/ssl.conf
      * https接続でのDocumentRoot
DocumentRoot "/usr/local/apache2/htdocs"

      * httpd.conf と同じ内容
ServerName kakin.homeftp.org:443

      * サーバ証明書のファイル名
SSLCertificateFile /usr/local/apache2/conf/ssl.crt/server.crt

      * サーバ用秘密鍵のファイル名
SSLCertificateKeyFile /usr/local/apache2/conf/ssl.key/server.key

サーバ証明書及び、サーバ秘密鍵の作成

CAの秘密鍵を作成

    -rand ランダムデータの基となるファイルを適当に指定する。
    1024 RSA方式で1024bit の秘密鍵を作成する。
# openssl genrsa -rand /var/log/messges -out ca.key 1024

    出力:ca.key (CA秘密鍵)

CA証明書の署名要求(CSR)を作成

# openssl req -new -key ca.key -out ca.csr

 (以下、各種情報を入力する)

           <省略>
	-----
	Country Name (2 letter code) [AU]:JP     【2文字国名】
	State or Province Name (full name) [Some-State]:Tokyo     【都道府県】
	Locality Name (eg, city) []:Meguro       【区市町村】
	Organization Name (eg, company) [Internet Widgits Pty Ltd]:Example Corp.   【組織名】
	Organizational Unit Name (eg, section) []:Example Dept    【部署名】
	Common Name (eg, YOUR name) []:www.example.jp     【サーバ名】
	Email Address []:root@example.jp     【メールアドレス】

	Please enter the following 'extra' attributes
	to be sent with your certificate request
	A challenge password []:     【Enter】
	An optional company name []: 【Enter】

    入力:ca.key(CA秘密鍵)
    出力:ca.csr(CSR)

CSRに署名して発行する

# openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
   入力:ca.csr (CSR)      ca.key (CA秘密鍵)
   出力:ca.crt (CA証明書)

サーバ用秘密鍵作成

# openssl genrsa -rand /var/log/messages -out server.key 1024

サーバ証明書のCSRを作成

# openssl req -new -key server.key -out server.csr
 
     (以下省略) * CA証明書のCSR作成と同じ内容を入力

認証局が使用するシリアルナンバーファイルを作成

# echo 01 > ca.srl

サーバ証明書を発行

# openssl x509 -req -days 365 -CA ca.crt * 実際は1行で
                -CAkey ca.key -in server.csr -out server.crt  
   入力:ca.crt (CA証明書)、ca.key (CA秘密鍵)、server.csr(サーバ証明書CSR)
   出力:server.crt (サーバ証明書)

指定ディレクトリにコピー

# cp -p ca.crt       /usr/local/apache2/conf/ssl.crt/server.crt
# cp -p server.crt   /usr/local/apache2/conf/ssl.key/server.key

Apacheをsslで起動

# apachectl sslstart
      Document-Folder          一覧
HP-UX
HULFT
JAVA
JP1
JavaScript
Linux
MAC
PHP
Perl
Python
Ruby
SOA
Solaris
Unix全般
Windows
XML
エクセル
スタイルシート
セキュリティー
データベース
ネットワーク
パソコン
ブラウザ
プログラム構文
仮想化
          RSS-Folder
ニュース
   アットマーク・アイティ(@IT)
   シンクイット(ThinkIT)
   インターネットコム
   インターネットウォッチ
   日経IT-Pro
   日経パソコン
   CNET Japan
   ZD-NetJapan
   MYCOM
   RBB-Today
ベンダー
   日本IBM
   日本HP
   サンマイクロシステムズ
   NEC
   富士通
   日立
ソフトウェア
   マイクロソフト
   トレンドマイクロ
   オラクル
   サイボウズ
   Mozilla
   野村総合研究所
   (その他ソフトウェア企業)
更新履歴 一覧
 07/08 PERF
プログラム構文
 07/07 PERF
プログラム構文
 06/25 オブジェクトプログラミング2
Perl>サンプル
 07/12 クローン作成
仮想化>vCenter
 07/12 vyatta設定
ネットワーク>vyatta
 07/12 vyattaインストール
ネットワーク>vyatta
 07/12 リポジトリサーバ
Linux>サーバ構築
 07/05 VMwareのインストール
仮想化>VMware
 07/05 PXEブート
仮想化>KVM
 07/01 DHCPでのPXEブート
仮想化>KVM
 06/27 qcow2仮想DISK作成
仮想化>KVM
 06/13 NWの設定
仮想化>VMwareEsxi
 06/13 IPアドレスの変更
仮想化>VMwareEsxi
 06/12 自動ssh
Unix全般>シェル>Bash
 06/12 diffプログラミング
Python
Google