OpenSSH
修正openssh-3.x/version.h
找到#define SSH_VERSION \"大众OpenSSH_3.x\公众
修正后编译安装
SSH
版本号:
修正apps/ssh/ssh2version.h
#define SSH2_VERSION \公众3.2.9.1\"大众
banner名:
修正apps/ssh/ssh2includes.h
#define SSH2_VERSION_STRING \"大众SSH Secure Shell \"大众 SSH2_VERSION
\"大众 (non-commercial version)\公众
#define SSH2_PROTOCOL_VERSION_STRING SSH2_VERSION
\"大众 SSH Secure Shell (non-commercial)\"大众
修正SSH-2.0 (不建议)
apps/ssh/sshd2.c
apps/ssh/lib/sshproto/trcommon.h
apps/ssh/sshstdiofilter.c
exim4配置文件:/etc/exim4/exim4.conf.template
找到#smtp_banner = $smtp_active_hostname ESMTP Exim $version_number $tod_full
去掉注释并修正
postfix
配置文件/etc /postfix/main.cf
修正 smtpd_banner=$myhostname ESMTP \"大众Version not Available\"大众
Proftpd配置文件:
伪装登入欢迎信息
修正 ServerIdent on \公众Serv-U FTP Server v5.0 for WinSock ready...\公众
或ServerIdent off
telnet会显示:220 ::ffff:192.168.2.3 FTP server ready
伪装banner信 息
DisplayLogin [msgfile] DisplayConnect [msgfile]
Vsftpd配置文件:vsftpd.conf
修正 ftpd_banner=welcome to this FTP server
Apache配置文件:/etc/apache2/apache2.conf 或/etc/apache2/httpd.conf
找到 ServerSignature on 改为 ServerSignature off
找到ServerTokens Full 改为 ServerTokens prod
经由以上修正,可以隐蔽一些 banner
但是用wget -S和curl -I还是可以看到apache字样
彻底伪装的话须要修正源文件
编辑ap_release.h文 件,修正\"大众#define AP_SERVER_BASEPRODUCT\公众Apache\公众\"大众为\"大众#define AP_SERVER_BASEPRODUCT\公众Microsoft-IIS/5.0\"大众
编辑os/unix/os.h文 件修正\公众#define PLATFORM\"大众Unix\"大众\"大众为\公众#define PLATFORM'Win32\"大众
重新编译apache
PHP配置文件php.ini
修正expose_php On ——> expose_php = Off
Nginx在nginx.conf 的 http { 里头加入 server_tokens 的参数
server_tokens off;
http {
include mime.types;
default_type application/octet-stream;
server_tokens off;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
彻底屏敝须要修正源码
src/core/nginx.h
找到
#define NGINX_VERSION \公众0.6.35\"大众
#define NGINX_VER \公众nginx/\"大众 NGINX_VERSION
#define NGINX_VAR \"大众NGINX\公众
修正后编译
TTL用以下命令修正Red Hat Linux的TTL基数为128(默认为64):
echo 128 > /proc/sys/net/ipv4/ip_default_ttl
用以下命令修正Red Hat Linux的TTL基数为128(默认为64):
net.ipv4.ip_default_ttl = 128