CentOS6で弱い暗号方式(MD5)を有効にする /etc/pki/tls/legacy-settings

* CentOS6.10にて確認。CentOS7でも指定可能な様子。
    * (Ubuntu では利用できない。そのためUbuntu21.04ではxpでhttps接続ができない(?))
* [Windows XP SP3のIE6でも見れるwebサーバー設定(自己署名証明書) - Qiita](https://qiita.com/tukiyo3/items/340d5e18b6db6404c02c)
* [OpenSSL 0.9.8で作成した鍵をOpenSSL 1.1.1 でも使う方法 - Qiita](https://qiita.com/tukiyo3/items/fc579fafc105a2ffd0c0)

## 参考

* [第39章 非推奨の機能 Red Hat Enterprise Linux 7 | Red Hat Customer Portal](https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/7.4_release_notes/chap-red_hat_enterprise_linux-7.4_release_notes-deprecated_functionality)
* [ApacheでOpenSSLのセキュリティを強化する - Qiita](https://qiita.com/sion_cojp/items/99fee211ceace3f76cff) の暗号方式一覧が分かりやすい。
* [安全な SSL/TLS 設定にするための10のポイント（Apache httpd 2.4） | あぱーブログ](https://blog.apar.jp/linux/8041/) チューニングを分かりやすく書いていた。

## 設定

* MD5を有効にする例

```sh
echo "LegacySigningMDs md5" >> /etc/pki/tls/legacy-settings
```

## きっかけ

### Apache 2.2

* Windows XP (IE6)では `echo "LegacySigningMDs md5" >> /etc/pki/tls/legacy-settings` しないと閲覧できなかった。
* 閲覧できるようになった時の暗号化は以下

```apache
SSLProtocol TLSv1 TLSv1.1
SSLCipherSuite DES-CBC3-SHA:PSK-AES256-CBC-SHA
```

![rc4.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/f2fcc7c3-1f15-f532-044b-13938540649d.png)
![ie8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/d05a7d14-9467-381e-be53-54e85b147118.png)


* windows7 sp1 (IE8) だとApache側で`SSLProtocol TLSv1.2`を有効にしていると見れない。

![mirenai.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/9aad52ea-6959-6c6f-4b7c-711aa88b04dd.png)

* 他参考
    * [ssl-SHA1を使用したTLSv1.2？ - スタックオーバーフロー](https://stackoverflow.com/questions/29860673/tlsv1-2-with-sha1)
    * [Transport Layer Security - Wikipedia](https://en.wikipedia.org/wiki/Transport_Layer_Security#Data_integrity)

* 各ブラウザでの接続 [ssllabs](https://www.ssllabs.com/ssltest/)の結果。

![ie8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/e06a3a6a-c260-dee9-4d83-3fca62615382.png)



### puppetmaster

* [puppetmaster](http://yum.puppetlabs.com/el/6/products/x86_64/)を起動時にエラーになった。

![err.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/8c7d29b1-c508-b351-a84d-f5ec9a626c11.png)

* 設定すると起動できるようになった。

![err2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/d7c7428f-fbf7-35b1-b6b0-c9b0da7d6b69.png)


## 暗号化スイートの確認

* [私が愛した openssl (SSL/TLS 編) - してみんとて](https://stimming-today.hatenablog.jp/entry/20120910/1347285980)
* [Gentoo Forums :: View topic - OpenVPN and MD5.](https://forums.gentoo.org/viewtopic-t-1064218-start-0.html)


```sh
#  MD5 を使ってるものだけ抜きだすコマンド
$ openssl ciphers -v MD5
```

* [輸出グレード暗号をサポートしているかの確認方法(FREAK Attack) - dondari](https://www.dondari.com/%E8%BC%B8%E5%87%BA%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%89%E6%9A%97%E5%8F%B7%E3%82%92%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%E3%81%8B%E3%81%AE%E7%A2%BA%E8%AA%8D%E6%96%B9%E6%B3%95(FREAK_Attack))

EXP- は `export`で、無効にするべきもの。

> 最近ssl系の脆弱性発見多いですね。ということでFREAK Attackです。 サーバー側の対応としては、輸出グレード暗号化のサポートをしないように設定することが必要のようです。


## OpenSSL の Source

* [source](https://git.sailfishos.org/mer-core/openssl/commit/99c8b913df4e64e1730e5d51c9676b70c69ab0c3)

![source3.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/55e64dea-9533-b137-cd58-afeef4ea3394.png)
![source2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/52db1df5-aa14-b8ef-6a74-ce1b5835a075.png)
![source.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/05cbcdd3-6050-7dba-2764-0029005bd5c1.png)