ssh日志记录登陆密码

ssh记录登陆密码

了解到ssh自身不记录登陆的用户名密码

但我们可以通过修改ssh源码或者打补丁的方式来实现对远程登陆用户密码的记录

只需修改ssh源码或者打补丁重新编译,安装

即可获得一个新的ssh用户端

过程

1、准备环境

安装对应的openssh源码包

wget https://mirror.leaseweb.com/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz

创建相应的安装配置路径

mkdir -p /opt/ssh7.5p1/conf

当然还要安装相应依赖,这一步关乎后面的编译是否成功

注意debian和centos的依赖包名还不一样

#centos

yum install gcc zlib-devel openssl-devel -y

#debian

apt-get install gcc zlib1g-dev  libssl1.0-dev -y

2、修改源码

解压刚下载的源码包

tar -zxvf openssh-7.5p1.tar.gz

进入目录

cd openssh-7.5p1

对源码进行一些修改

增加在日志中添加登陆用户名密码的功能

vi auth-passwd.c

添加一段代码

#找到函数auth_password,添加
logit("username: %s password: %s", authctxt->user, password);

image-20220824092952719

3、编译安装

开始编译

./configure --sysconfdir=/opt/ssh7.5p1/conf/ --without-zlib-version-check --with-md5-passwords --prefix=/opt/ssh7.5p1/

#参数说明

--sysconfdir #配置文件目录

--without-zlib-version-check

--with-md5-passwords

--prefix #安装目录

在没有报错的情况下

进一步make

make install

之后就可以启动使用

/opt/ssh7.5p1/sbin/sshd

默认22端口,记得先把原先ssh停掉

4、登陆配置修改

按照前面设定的配置目录找到sshd_config

#修改配置文件
vim /opt/ssh7.5p1/conf/sshd_config

就跟正常改ssh配置文件操作一样,像允许远程用户登陆、修改端口

#修改端口
Port 1022
#允许root账号登陆
PermitRootLogin yes

5、日志查看

centos和debain日志位置不同

#centos
grep 'username:' /var/log/messages
#debian
grep 'username:' /var/log/auth.log

远程登陆一波

运行结果如下:

image-20220824102733762

posted @ 2022-08-29 15:25  DAMOXILAI  阅读(840)  评论(0编辑  收藏  举报