Есть ли способ проверить, на какой серверной ОС работает конкретный сайт. Например, из командной строки Linux. Может через телнет? Но все, что я могу получить от "telnet www.google.com http", это:
Trying 209.85.173.104...
Connected to www.l.google.com.
Escape character is '^]'.
Можно ли вообще остановиться на этой теме?
Многие сайты сообщают вам в заголовках HTTP:
$ curl -s -I hotmail.com | grep Server
Server: Microsoft-IIS/7.5
$ curl -s -I pinterest.com | grep Server
Server: nginx/0.8.54
Некоторые включают ОС, а иногда и версию:
$ curl -s -I linuxquestions.com | grep Server
Server: Apache/2.2.9 (Unix)
$ curl -s -I red.com | grep Server
Server: Apache/2.2.3 (Red Hat)
$ curl -s -I slashdot.org | grep Server
Server: Apache/2.2.3 (CentOS)
$ curl -s -I bar.com | grep Server
Server: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8r DAV/2 PHP/5.3.8
Некоторые пишут собственное программное обеспечение для веб-обслуживания:
$ curl -s -I google.com | grep Server
Server: gws
$ curl -s -I yahoo.com | grep Server
Server: YTS/1.20.10
Но некоторые не отправляют Server
заголовок:
$ curl -s -I serverfault.com
HTTP/1.1 200 OK
Cache-Control: public, max-age=41
Content-Length: 129706
Content-Type: text/html; charset=utf-8
Expires: Tue, 27 Mar 2012 13:01:46 GMT
Last-Modified: Tue, 27 Mar 2012 13:00:46 GMT
Vary: *
Date: Tue, 27 Mar 2012 13:01:04 GMT
$ curl -s -I www.facebook.com
HTTP/1.1 302 Found
Location: http://www.facebook.com/common/browser.php
P3P: CP="Facebook does not have a P3P policy. Learn why here: http://fb.me/p3p"
Set-Cookie: datr=sbpxT_PpXR9FO5mMTy8pCTjD; expires=Thu, 27-Mar-2014 13:03:45 GMT; path=/; domain=.facebook.com; httponly
Content-Type: text/html; charset=utf-8
X-FB-Debug: VJycxKwQ9bAV0Z/n6jfN1WSFx4pqj2337c1jc+pPlE0=
X-Cnection: close
Content-Length: 0
Date: Tue, 27 Mar 2012 13:03:45 GMT
Все или все это могло быть ложью. Предложение Барта о nmap
с большей вероятностью будет точным, но не может дать 100% точных результатов по указанным им причинам. Иногда это даже не имеет смысла, например, учитывая количество серверов, которые участвуют в выполнении одного HTTP-запроса в Google, их веб-серверы, поисковые серверы, серверы баз данных, серверы кэширования и все остальное, что они запускают, потенциально могут использовать разные операционные системы, и вы бы не знали.
Вы можете найти встроенную в NMap функцию снятия отпечатков пальцев ОС.
Однако, если вы ищете что-то вроде «Что работает Google?» вы не уйдете далеко, так как вы не узнаете, что стоит за их балансировщиками нагрузки, или брандмауэры заблокируют это, а снятие отпечатков пальцев может быть настолько точным, что вы можете получать ложные отчеты обратно, и вы не можете никуда добраться, когда соединение каким-то образом NAT изд.
Спросите Netcraft: Что это за сайт?
http://uptime.netcraft.com/up/graph?site=google.com возвращает "server: gws" (т.е. веб-сервер Google).