Проверка служб, работающих через шифрованное соединение.

Один из моих любимых способов проверки выглядит так:

sabitov@yam ~ $ telnet server 110 Trying 84.237.116.x... Connected to server. Escape character is '^]'. +OK v2010.aspvl server ready USER user +OK PASS password +OK Logged in. LIST +OK 0 messages: . QUIT +OK Logging out. Connection closed by foreign host.

Так я проверяю почти все сервисы, когда хочу убедиться, что демон не только слушает нужный порт, но и делает что-то полезное. :) Но! Существует целая когорта сервисов, которые работают поверх шифрованного (SSL-) канала. Телнетом на них, очевидно, ходить глупо. В такой ситуации делаем так:

sabitov@yam ~ $ openssl s_client -connect server:995 CONNECTED(00000003) [... тут идёт куча мусора про сертификаты и т.п ...] --- +OK v2010.aspvl server ready USER user +OK PASS password +OK Logged in. LIST +OK 0 messages: . QUIT DONE

Если надо проверить работу HTTPS-сайта, то нужно указать использование SNI

sabitov@yam ~ $ openssl s_client -connect wiki.sabitov.ru:443 -servername wiki.sabitov.ru CONNECTED(00000003) [... тут идёт куча мусора про сертификаты и т.п ...] --- GET / HTTP/1.1 Host: wiki.sabitov.ru HTTP/1.1 200 OK Date: Thu, 21 Mar 2013 16:09:26 GMT Server: Apache X-Powered-By: PHP/5.4.8--pl0-gentoo Set-Cookie: DokuWiki=am57ut4ga5dp9b4jv86ij4f5h0; path=/; secure; HttpOnly Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Set-Cookie: DW7fa065a06cb74b536c124cfbe56ac6d3=deleted; expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/; secure; httponly Transfer-Encoding: chunked Content-Type: text/html; charset=utf-8 1038 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru" dir="ltr"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script> <title> start [Wiki of Andrew A. Sabitov] </title>

Как видно, апач отдал нам именно то, что мы и просили

Tracedump:

newBaseSize: 16pt
newBaseSizeInPt: 16