Linux管理员必用:OpenSSL服务器测试技巧

发表于:2011-11-18 10:11

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:布加迪 编译    来源:51Testing软件测试网采编

  OpenSSL是一款开源工具包,用于实现安全套接层(SSL)和传输层安全(TLS)协议,它对于大多数负责安全网络工作Linux管理员来说是必不可少的一款日常工具。但是OpenSSL还包括丰富的功能,连经验老到的资深人士也可能不太熟悉这些功能。你可以使用OpenSSL来测试POP和IMAP服务器,并且测试服务器的连接速度,还有其他值得关注的用途。

  OpenSSL测试POP和IMAP服务器

  当你部署一台新的邮件服务器,或者对旧的邮件服务器进行更改时,传统的telnet仍是测试未加密的POP和IMAP服务器会话的保留工具。但是如果是使用TLS/SSL加密的服务器,该怎么办呢?Telnet无法与这些服务器进行对话。要测试这些服务器,最快速、最容易的办法就是使用OpenSSL的s_client选项。s_client是一个普通的SSL/TLS客户端,用来测试使用TLS/SSL的所有服务器。

  要测试POP服务器,先给自己发送一堆测试消息,那样你就有东西可以处理了。使用域名或IP地址和端口号,连接到POP3S服务器;端口995是标准的POP3S端口:

  $ openssl s_client -connect mailserver.com:995

  你会看到好多信息一闪而过,最后会出现这样的内容:

  Verify return code: 18 (self signed certificate)

  ---

  +OK Hello there.

  这个响应表明这是一台Courier POP3服务器。另一种流行的POP3服务器Dovecot会有这样的响应:

  Verify return code: 18 (self signed certificate)

  ---

  +OK Dovecot ready.

  我想,大概Courier很害羞,不想表明身份。每一种响应都确认了服务器在运行,在响应客户端请求;核实了TSL/SSL加密处于正常工作状态。如果你想了解更多的详细信息,可以用tee命令把相当冗长的输出结果记下来,以便进一步分析。该命令将命令结果导到文本文件上,同时将它显示在屏幕上:

  $ openssl s_client -connect mailserver.com:995 | tee pop3s.txt

  如果输出内容看起来正确,也没有报告你的SSL证书有何问题,那么服务器极可能处于良好的工作状态,准备投入运行。要不然,你可能会看到这个常见的错误消息:

  Verify return code: 20 (unable to get local issuer certificate)

  这意味着,OpenSSL找不到你存储的可信证书管理机构(CA)。安装的每一个Linux系统都默认存储了Verisign、Thawte和Comodo等各大商业CA的证书,以及你在上网冲浪或使用电子邮件时添加的任何CA。(比如当你访问网站时,Firefox弹出一些警示内容,表明该网站在使用不可信的CA,提示你是否果真确信要访问该网站?你是否想要添加例外。)你可以告诉s_client你的邮件服务器的CA在哪里:

  $ openssl s_client -connect mailserver.com:995  -CApath /etc/ssl/certs/

  然后,它应该会显示Verify return code: 0 (ok).

  现在,你可以收阅电子邮件,看看测试邮件有没有送达。输入下面的粗体命令,使用你自己的登录信息。非粗体的几行是服务器响应:

  $ +OK Dovecot ready
  user carla
  +OK
  pass password
  +OK Logged in.
  stat
  +OK 2 4761
  list
  +OK
  1 2232
  2 2531
  .
  retr 1
  +OK 2232 octets
  Return-path:<admin@test.net>
  [...]

  stat告诉你收件箱里面有多少封邮件及邮件大小。list列出了你的邮件。retr检索邮件,并按照列表号来显示,显示了所有标题,然后是邮件正文。你完成后,只需输入quit。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号