您的位置:首页 > 运维架构

OpenSSL命令---s_time

2013-11-20 21:37 295 查看
用途:

s_time是openss提供的SSL/TLS性能测试工具,用于测试SSL/TSL服务。

用法:

openssl s_time [-connect host:port] [-www page] [-cert filename] [-key filename] [-CApath directory]
[-CAfile filename] [-reuse] [-new] [-verify depth] [-nbio] [-time seconds] [-ssl2] [-ssl3] [-bugs]
[-cipher cipherlist]

选项说明:

-connect host:port:设置服务器地址和端口号。如果没有设置,则默认为本地主机以及端口号4433。

-www page:指定获取的web网页。

-cert filename:使用的证书文件。如果server不要求要证书,这个可以省略。默认为PEM格式。

-key filename:使用的证书私钥文件。如果server不要求要证书,这个可以省略。默认为PEM格式。

-CApath directory:设置信任CA文件所在路径,此路径中的ca文件名采用特殊的形式:xxx.0,其中xxx为CA证书持有者的哈希值,它通过x509
-hash命令获得。

-CAfile filename:某文件,里面是所有你信任的CA的证书的内容。当你要建立client的证书链的时候也需要用到这个文件。

-reuse:用同样地session ID多次请求,主要用于测试。

-new:
新建链接。

-verify depth:设置验证深度。

-nbio:设置非阻塞模式的I/O。

-time seconds:指定搜集数据的秒数,默认30秒。

-ssl2、-ssl3:采用的SSL协议版本。

-bugs:打印调试信息值。

-cipher cipherlist:算法套件。

注意:

s_time可以被用于测量SSL连接过程中的性能。为了连接一个SSL HTTP服务器并获取默认页的命令如下:

openssl s_time -connect servername:443 -www / -CApath yourdir -CAfile yourfile.pem

-cipher commoncipher [-ssl3]

使用的端口号是443。’ commoncipher’是一个被服务器和客户端所同意的算法组件。

如果握手失败,原因可能有以下几种:

1.
server需要验证你的证书,但你没有证书。

2. 如果肯定不是原因1,那么就慢慢一个一个set以下几个选项:-bugs, -ssl2,
-ssl3, -tls1,-no_ssl2,-no_ssl3, -no_dtls。

3. 这可能是因为对方的server处理SSL有bug。

如果在命令行用B<-cert>选项来指定一个证书,它将不会被使用,除非服务器明确的请求一个客户端的证书。因此仅仅在客户端包含一个客户端证书时不能保证证书在工作。

BUGs:

因为这个项目没有包含L<s_client(1)|s_client(1)>项目的所有选项来转换协议开和关,就不能够测量服务器端的所有协议的性能问题。

如果服务器验证失败,B<-verify>将会退出。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: