《密码技术与物联网安全:mbedtls开发实战》 —1.5.5 SSL命令 s_server
1.5.5 SSL命令 s_server
s_server是OpenSSL提供的SSL工具,该工具可用来搭建TLS/DTLS服务器,用于测试和调试TLS/DTLS客户端。s_server命令行参数很多,如表1-2所示。可以通过openssl s_server -help进行查看,同样也可以通过man s_server进行查看。
表1-2 openssl s_server命令参数描述
$ man s_server
# 输出内容
NAME
openssl-s_server, s_server - SSL/TLS server program
SYNOPSIS
openssl s_server [-help] [-port +int] [-accept val] [-unix val] [-4] [-6]
[-unlink] [-context val] [-verify int] [-Verify int] [-cert infile]
[-nameopt val] [-naccept +int] [-serverinfo val] [-certform PEM|DER]
[-key infile] [-keyform format] [-pass val] [-dcert infile]
[-dcertform PEM|DER] [-dkey infile] [-dkeyform PEM|DER] [-dpass val]
[-nbio_test] [-crlf] [-debug] [-msg] [-msgfile outfile] [-state]
// 省略部分内容
本节将通过一个示例说明s_server工具使用方法,示例中将使用命令行工具s_server搭建一个TLS服务器,然后使用浏览器连接该TLS服务器。
1.搭建TLS服务器
# 进入证书及HTML文件所在路径
$ cd 14_tls/tls_server
# 运行TLS 服务器,等待客户端连接
$ openssl s_server --state -cert srv_cert.pem -key srv_privkey.pem -CAfile ca_cert.pem -port 443 -cipher ECDHE-ECDSA-AES256-GCM-SHA384 -WWW ./
2.浏览器访问
打开火狐浏览器,在网址栏输入https://localhost/index.html。由于服务器使用的是自签名证书,需要将证书添加到信任列表才能继续访问,依次单击【高级】【添加例外】【确认安全例外】即可,添加例外过程如图1-4所示。
图1-4 添加例外
完成上述设置后,看到如图1-5所示页面,则表示HTTPS服务器访问成功。
图1-5 服务器访问成功
连接成功后,服务器控制台会输出握手过程。
SSL_accept:before SSL initialization
SSL_accept:before SSL initialization
SSL_accept:SSLv3/TLS read client hello
SSL_accept:SSLv3/TLS write server hello
SSL_accept:SSLv3/TLS write certificate
SSL_accept:SSLv3/TLS write key exchange
SSL_accept:SSLv3/TLS write server done
SSL_accept:SSLv3/TLS write server done
SSL_accept:SSLv3/TLS read client key exchange
SSL_accept:SSLv3/TLS read change cipher spec
SSL_accept:SSLv3/TLS read finished
SSL_accept:SSLv3/TLS write session ticket
SSL_accept:SSLv3/TLS write change cipher spec
SSL_accept:SSLv3/TLS write finished
FILE:index.html
- 点赞
- 收藏
- 关注作者
评论(0)