無料Wikiサービス | デモページ
Linuxなどのメモ書き

crypto policy


crypto policy

SSLの設定をしていたら、Fedora21からcrypto policyというものが導入されていたのを知った。

crypto policyにより、各アプリケーションで個別に設定していた暗号設定を、システム全体の設定として定義し、各アプリケーションからそれを参照するようにできる。システム内の各アプリケーションの暗号関連のセキュリティレベルを、まとめて管理するために開発されたもののようだ。

Fedora23でcrypto policyに対応しているソフト/ライブラリは以下のもの(man update-crypto-policies参照)。

  • GnuTLS library
  • OpenSSL library
  • OpenJDK
  • Libkrb5
  • BIND

OpenSSLでのcrypto policyの参照

例えば、OpenSSLでcrypto policyの設定を参照するには、PROFILE=SYSTEMというキーワードを使えばよい。Apacheのmod_sslの設定なら、以下のように設定することができる。

SSLCipherSuite PROFILE=SYSTEM

PROFILE=SYSTEMの部分はopensslライブラリにより、crypto policyの設定に展開される。
どのような設定になるかは、/etc/crypto-policies/back-ends/openssl.configに記述されている。

openssl.configの例

!SSLv2:kEECDH:kRSA:kEDH:kPSK:+3DES:!aNULL:!eNULL:!MD5:!EXP:!RC4:!SEED:!IDEA:!DES

なお、openssl.configはupdate-crypto-policiesコマンドで更新されるので、勝手に書き換えてはいけない。

実際にどのようなCipher Suiteが使われるかは、以下のコマンドで確認できる。

# openssl ciphers -v 'PROFILE=SYSTEM'

 

policyの変更

crypto policyはLEGACY/DEFAULT/FUTUREの中から選択できる。現在のモードは /etc/crypto-policies/state/current を確認するか、update-crypto-policiesコマンドで確認できる。

# update-crypto-policies --show
DEFAULT


設定を変更するには、/etc/crypto-policies/config を変更する。

変更後、update-crypto-policiesを実行すると反映される。

設定の反映

# update-crypto-policies 
Setting system policy to FUTURE

反映させると、/etc/crypto-policies/back-ends/以下の設定が更新されているのがわかる。openssl ciphers -v 'PROFILE=SYSTEM' でも使用される暗号が変わっているのが確認できる。

参照

FedoraProjectのドキュメント

https://fedoraproject.org/wiki/Changes/CryptoPolicy

 


最終更新 2016/02/01 16:49:32 - kztomita
(2016/02/01 16:45:28 作成)