公開サイトで試したプライベート認証局(CA)の結果

多くのサイトが3段階の証明書なので試しに作成、公開サイトで2段階の証明書の効果と比較した結果、両方とも同じで結局のところプライベート認証局(CA)は公開サイトで言うところの中間認証局(CA)と同じと考えれば良いことで自前の自宅サーバ(ローカルネットワーク)内では必ずしも必要としない感じだ。

同時進行でプライベート認証局(CA)で試した各ブラウザの、まだ解決してない部分の「証明書の警告」に関して知ることができた。

1.Mozilla Firefoxは、ブラウザのオプション–>プライバシーとセキュリティー–>設定(設定の表示)でプライベート認証局(CA)をインポートして登録、以降は緑マークでオープン。
2.iPhoneのSafariでは、最初に「警告」が表示されるけど構わず「OK」でオープンすると以降は緑マークで表示される。
3.Microsoft Edge、IE、Googlなどのブラウザでは認証局(CA)をルート機関へ登録すればPCでは最初から緑マークだけど、iPhoneにインストールして「4G」 で確認すると「証明書のID?が無い」と言った警告がでる。しかし構わず「OK」でオープンすると以降は警告が消えてオープン。
4.Client証明書(個人のPCのみ有効)で他のPCやiPhoneでは秘密のファイルなどを指定するとサイト自体が「警告」又は「エラー」表示になるのでビックリ!、最低でも認証画面が必要になる。

補足)3段階証明書の作成で気が付いた点は、認証局(CA)の証明書が「3年とか10年有効」で作成しようとしたが、たったの1か月の証明書になる。Config内の修正が必要?又はWindowsに癖がある?のか調査中!

久しぶりの買い物手伝い

今日の午前中駒沢通りにあるスーパーへマルと一緒に、ママの買い物手伝い。

月一の特売日らしく、「キャベツやらインスタントラーメン等がべら棒に安い」との事でマルも一緒に買い物手伝い。ママが買い物してる間は、冷たい風が吹き付けてる駐輪場でマルと震えながらだった。

ベランダから見たら「白銀の世界だ~」

目が覚めてベランダから辺りを見渡すと白銀の世界、久しぶりの大雪だから都心は交通マヒで大混乱の様子。これではマルといつもの散歩に行けないね。

取り合えず路地に出たが、公園内も結構積もったままなので入ることが出来ないし、路地を歩くのも困難な感じだし、戻ろうかマルちゃん!

追記)☀が眩しいくらいの中を恐る恐る歩くマル、それでも歩きたいのか抱っこしようと手を出すと「う~」と嫌がる。

冷たくないの、マルちゃん!

年明けての初雪

ようやく本降りになって久しぶりの雪景色、これから夜になって増々積もるだろうから明朝は雪国のようになるのかな? 積雪予想が10㎝?まぁこの程度降っても東京都内では交通マヒやら歩行者のすってんころりんとか、大きなニュースになりそうだ。

プライベート認証局(CA)で作成したクライアント証明書の利用方法

今のところ秘密のフォルダーは「ベーシック認証」だけど盗聴・改竄に弱いところがあるようだ。代替えでクライアント証明書をPC以外にWWWサーバーで利用できそうなので、新たに作成する証明書を個人名にして接続元 (ユーザ) が本物かどうかを証明する「SSLクライアント認証」とすれば、「Basic認証」の代わりになる。

Client 証明書作成
作成方法は投稿記事を参照、同じ作業の中で下記を修正して作成する。

1. Common Nameにユーザ名を入力
2. Organization Unit Name、Email Adressは「Enterのみ」
3. xxxx.csr,xxxx.crt,key,xxxxcert.p12の「xxxx」はユーザー名

【Windowsへ登録とApacheのhttpd-ssl.confに設定】

*必要なファイルは認証局(CA)のmy_ca.crtとクライアント(ユーザー名)証明書のxxxx.crt
・xxxxcert.p12はWindowsの証明書ストアーに登録

[nternet Explorer へ登録]
コントロールパネル の インターネットオプション(インターネットオプション) を選択⇒「コンテンツ タブ」⇒[証明書]⇒[インポート(I)…]でウィザード画面を表示。

・インポートする証明書ファイル名 ➡ xxxxcert.p12 を指定
・ファイルの種類 ➡ Personal Information Exchange (*.pfx; *.p12) 又は 全てのファイル (*.*)
・パスワード ➡ ユーザーが証明書を取り込む時のパスワード
・証明書ストア ➡ 個人へ登録

*証明書の種類に基づいて、自動的に証明書ストアを選択するにすれば OK

#インポートが成功すると、下記の2つの証明書が追加
・信頼されたルート証明機関タブ: 認証局(CA)名
・個人タブ: Common Name(ユーザー名)
*Mozilla Firefox 等の登録は直接ブラウザへ証明書を登録

[Client証明書の利用方法]
SSL クライアント認証を使う場合は、「Common Name(ユーザー名)」 のみアクセスを許可する。

**httpd-ssl.confのSSLengine Onの下辺りに記入**
<Directory x:/xampp/htdocs/wordpress/xxxxxx>
SSLCACertificateFile x:/xxxx/my_ca.crt
SSLCARevocationFile x:/xxxx/xxxx.crt
</directory>
SSLRequireSSL
SSLVerifyClient require
SSLUserName SSL_CLIENT_S_DN_CN
Satisfy Any
Allow from All
SSLRequire %{SSL_CLIENT_S_DN_CN} in {“ユーザー名”}

【Client証明書の破棄】
C:\xxxx\index.txtの発行済み証明書の一覧から破棄するPEMをチェック。

cd / x:\xxxx
openssl ca -config openssl.cnf -revoke newcerts/(シリアル値).pem
*証明書失効リストを更新
openssl ca -config openssl.cnf -gencrl -out xxxx.crt
# service httpd reload
これで該当証明書は使えなくなる

【[Client証明書の有効期限を更新】

1. 新規にクライアント証明書を発行する
2. Common Name 等は、前回の証明書と同じ内容を入力
3. 新しいクライアント証明書を設置、古い証明書を削除
4. 古いクライアント証明書を破棄

今日の悲しい出来事

公園脇の市川のお爺ちゃん、だれからも親しみのある呼び名の「シヨウちゃん」で呼ばれてた彼が亡くなった。先代の「まる」も「マルjr.」も彼が大好きで散歩コースの途中で某幼稚園のガードマン姿を見つけると飛びつくように挨拶したり、公園のベンチに座っている姿を見ると走って膝の上に跳び乗ったり、そんな時の彼の元気な姿が忘れられない。

つい4日前の午前中、ベランダで某幼稚園から家に戻る途中のうしろ姿を見たのが最後となった。80歳の大台に乗っても巨体を揺すりながら飛び跳ねるように歩いていた元気な姿が、その日に限ってフラフラしてる感じに見えた。

はやり風邪から肺炎を起こして昨夜亡くなったのが近くの病院、あまりにも巨漢の彼なので家に戻れないと言うことで病院側から葬儀など全ての手配をするようだ。彼との「お別れ」は後日になりそうだ。

日を改めて一緒にお別れしようね、マルちゃん!

記憶にないほどご無沙汰の銭湯に行ってきた。

我が家の外付けの湯沸かし器が突然故障して、新しい湯沸かし器の取り付けが来週初めなので、その間は銭湯に行くことになった。

銭湯は歩いて7~8分のところ、夕方4時からと言うことなので家を5分前に出かけて、フロント式になってるところで1回460円を支払い男湯へ。まだ2~3人だけなのでゆったりした感じで、お風呂には「バイブラ」があったり、シャワーが取り付けてあったり、別料金らしいけど「サウナ」もあったり、とにかく記憶にないほど昔の経験なので物珍しさもあって、時間をかけてお風呂に入っていたから少しのぼせた感じかな?帰りは千鳥足で帰ってきた。

プライベート認証局(CA)でSANs対応のサーバー証明書、クライアント証明書の作成

xampp\apache\conf のopenssl.cnfを x:\openssl-Win32\bin (ここがデフォルト) にコピーして,以下のようにカスタマイズする。
【準備】
1.システム・環境変数の「openssl.cfg」の拡張子を「cnf」に変更。
2.ドライブ(x:/)上に作業用フォルダーを作成。
3.OpenSSL\bin\openssl.cnfのチェック、修正、追記。

[openssl.cnf]
・dir=./demoCA—>dir=(drive xx):\xxxx ➡ 絶対パス
*作業用フォルダーへの絶対パス 例)etc,work
・default_days = 365 ➡ default_days = 1095(3年)
・default_md = default ➡ default_md = sha256
・# req_extensions = v3_req ➡ req_extensions = v3_req

|| [ v3_req ] のエリア|| ➡ 下記を追記
subjectAltName = @alt_names
[ alt_names ]
DNS.1 = xxx.example.com ➡ CN (Common Name)
DNS.2 = *.example.com ➡ A records
*ドメインを DNS.1, DNS.2, DNS.3, … のように追加できる。

||Client証明書|| ➡「openssl.cnf」の最後に以下を追記
[ ssl_client ]
basicConstraints = CA:FALSE
nsCertType = client
keyUsage = digitalSignature, keyEncipherment
extendedKeyUsage = clientAuth
nsComment = “OpenSSL Certificate for SSL Client”

[新証明書のサブジェクト]

・pass phrase: xxxxxxxxx ➡ 全て同じ
・Country Name: JP
・State or Province Name: Tokyo
・Locality Name: Meguro-ku
・Organization Name: xxxxx ➡ 例)ドメイン名も可
・Organizational Unit Name: xxxxx ➡(*)
・Common Name: xxxxxx ➡ 例)PrivateCA
・Email Address: xxxxx@xxxxxx.xxx ➡(*)
(*)CAで省略、Server証明書&Client証明書で記入

認証局(CA)の作成】

1. x:/にxxxxフォルダを作る。
2. フォルダー内に「private」と「newcerts」、index.txtを作る。
3. コマンドプロンプト(管理者権限)で実行。
cd x:\xxxx
echo 01 > serial
openssl req -new -keyout private\cakey.pem -out careq.pem
openssl ca -selfsign -in careq.pem -extensions v3_ca -out cacert.pem
copy cacert.pem x:\xampp\apache\conf
copy cacert.pem my_ca.crt


Server 証明書の作成

1. cd x:\xxxx
openssl genrsa -out xxxxxx.key 2048
openssl req -new -out xxxxxx.csr -key xxxxxx.key
2. 次のコマンドで CSR 内の SANs を確認する。(Subject Alternative Name?)
openssl req -text -noout -in xxxxxx.csr
3. openssl ca -in xxxxxx.csr -out xxxxxx.crt -extensions v3_req
copy xxxxxx.key cp_xxxxxx.key
openssl rsa <cp_xxxxxx.key> xxxxxx.key ➡ 必要(?)
(?)Win32は「SSLPassPhraseDialog builtin」 をサポートしていないので, server.key の pass phrase を復号しておかないと, Apache の起動時にエラーが出る。
*xxxxxxのkey/csr/crt は同じ名 例)server.key/csr/crt
[Apache用]
copy xxxxxx.key x:\xampp\apache\conf\ssl.key
copy xxxxxx.crt x:\xampp\apache\conf\ssl.crt

Client 証明書の作成

1. cd x:\xxxx
openssl req -new -keyout client.key -out client.csr
openssl ca -policy policy_anything -extensions ssl_client -in client.csr -out client.crt
openssl pkcs12 -export -in client.crt -inkey client.key -out clientcert.p12


メモ)度々のOpenSSLで証明書発行してルート機関等へ登録・削除すると、「https」 が有効になっているにも関わらず、「鍵が見つからない」と言った下記のようなエラーが発生するのでapacheが起動できなくなる。
SSL Library Error: error:140A80B1:SSL routines:SSL_CTX_check_private_key:no certificate assigned
対処法として、一旦「https」に関する全ての設定を無効にした後、PCを再起動してHTTPで起動できることを確認。次に新たに証明書(CA)を登録、HTTPSの設定を終えてからApacheの再起動。
OSBLOG_OSSHINET(当サイト)では、Letsencryptのクライアント証明書のHTTPSなので、MailとFTPサーバーに設定して確認したところ問題なく暗号化してる。

PS. SANs対応の各証明書作成「TEST」で成功した際の写真。

楽しい一時、トランプで大騒ぎ

昼過ぎに突然次女が玄関口、驚いて「あれ会社は、大丈夫なの?」連絡なく来たので、ママも長女も外出中、大好きなケーキ持参で「今日は休み、翔太と落ち合う予定だからもうすぐ来るよ」暫くして孫の翔太も来た。とにかく、2人ともお腹が空いてるから好き勝手に冷蔵庫にあるものを見つけたりご飯を炊いたり、「なんでもできるんだ~」、ママが3時ごろで長女が4時過ぎ、その後は我が家はワイワイガヤガヤ、夕食はママのご馳走だ。

食後は久しぶりのトランプで大騒ぎ、9時過ぎに帰ったけど、2人が帰った後はシ~ンと静まり返って、マルちゃん!寝ようかな!

散歩前の一時だけど。。。

早朝マルに起こされたが冷たくて起きるのが嫌だったけど、マルの「おめざ」やゴミ出しで仕方ない。ここ2~3日は震えるほどの冷たさだったので暖房をつけたから良かったけど、毎日TVニュースで日本海側の大雪や事故等の報道を見てると、太平洋側、特に関東地方とは天と地ほどの落差があって日中は快晴、雲一つない陽気が続いて喜んで良いのかどうか?と、思いながらも路地に出ると「極寒」だよ!

毎朝のマルと散歩に出かける時は、帽子にマスクとマフラーで完全装備、マルは毛糸の洋服だけどね。