接続先サーバで使用可能なcipherを知りたい--curl_20141029
接続先サーバで使用可能なcipherを知りたい--curl_20141027 - Shammerismで作成したスクリプト、応答が302とかでHTMLのコンテントがない場合や、何も応答を返さないサーバーがあると誤判定してしまう可能性がある。コンテントがない場合はどうにもならないが、302とかLocationヘッダで遷移先を知らせてくれる場合は回避する方法がある。具体的にはcurlの-Lオプションを使用すればいい。ほとんど変わらないが新スクリプトは以下のような感じ。
#!/bin/bash SUPPORTED_CIPHERS="supported-ciphers.txt"; if [ $# -ne 2 ];then echo "Usage $0 DestServer URI" exit 1; fi if [ -e $SUPPORTED_CIPHERS ];then rm $SUPPORTED_CIPHERS; fi ciphers=`openssl ciphers -v | awk '{print $1}'` > /dev/null; for i in $ciphers do curl -L --silent --insecure --ciphers $i https://$1$2 > res.html; RRR=`wc -l res.html | awk '{print $1}'`; if [ "$RRR" = "0" ];then echo "$i is not supported on this server."; else echo "$i" >> $SUPPORTED_CIPHERS; fi done