加强SSH安全性(清理系统日志)

ZephyrXT 发布于 阅读:56

清除登陆系统失败的记录,也就是lastb命令看到的记录
[root@localhost root]# echo > /var/log/btmp 此文件默认打开时乱码的
[root@localhost root]# echo > /var/log/btmp
[root@localhost root]# lastb

清除登陆系统成功的记录,也就是last命令看到的记录
[root@localhost root]# echo > /var/log/wtmp 此文件默认打开时乱码的,里面可以看到ip等等信息
[root@localhost root]# echo >/var/log/wtmp
[root@localhost root]# last

清除历史执行命令
[root@localhost root]# history -c
或者,清空用户目录下的这个文件即可
[root@localhost root]# echo > ./.bash_history

 

编辑/etc/ssh/sshd_config文件

Port 22960
LoginGraceTime 30
MaxAuthTries 3
Protocol 2
PermitRootLogin no

LoginGraceTime 允许一次登录花费 30 秒;如果用户花费的时间超过 30 秒,就不允许他访问,必须重新登录。MaxAuthTries 把错误尝试的次数限制为 3 次,3 次之后拒绝登录尝试。上面的 Protocol 2 行禁止使用比较弱的协议。最后一行不允许任何人作为根用户登录

 

重启sshd

service sshd restart

2. 限制IP
首先修改/etc/hosts.allow文件,将可访问服务器ssh服务的客户IP加入其中,格式如下
sshd:192.168.1.0/255.255.255.0
sshd: 202.114.23.45
sshd: 211.67.67.89
然后修改/etc/hosts.deny文件,加入禁用其它客户连接ssh服务
sshd: ALL

1.Iptables 限制访问ip 只有特定的ip才能访问22端口。
iptables -A INPUT -p tcp -s 源地址 --destination-port 22 -j ACCEPT
iptables -A INPUT -p tcp --destination-port 22 -j DROP
2.修改/etc/ssh/sshd_config 使用 allowusers [email protected] 这个参数限制ssh访问的用户以及ip。这个办法是通过ssh本身的验证机制来实现的,他并不会在网络层直接拒绝来自任意ip的访问。
3. 使用/etc/hosts.allow 配合/etc/hosts.deny 来限制用户的访问。tcpwarpd 的方式。

——————使用证书登录——————

VPS端:

ssh-keygen -t rsa #创建私钥、公钥

将 ~/.ssh/id_rsa.pub命名为 ~/.ssh/authorized_keys

下载id_rsa到本地

使用tunnelier 的user keypair manager导入

然后将认证方式改为相应的public-key即可

——————修改密码不可用——————

编辑/etc/ssh/sshd_config
'PasswordAuthentication no'

——————最低权限用户——————

1,增加一个linux用户,并赋予该用户一个nologin的shell权限。
useradd username -s /sbin/nologin -M

(-M意味着不创建目录)
2,设置该用户密码。
passwd username

参考:

Linux下清空用户登录记录和命令历史的方法
https://bbs.zephyrxt.com/forum.php?mod=viewthread&tid=4428

系统重装
https://bbs.zephyrxt.com/forum.php?mod=viewthread&tid=3211
Linux服务器限制ssh登录,查看登录日志
https://bbs.zephyrxt.com/forum.php?mod=viewthread&tid=4424&fromuid=6

限制ssh 登录ip
https://bbs.zephyrxt.com/forum.php?mod=viewthread&tid=3475&fromuid=6

Linux修改SSH端口和禁止Root远程登陆设置
https://bbs.zephyrxt.com/forum.php?mod=viewthread&tid=3774&fromuid=6

centos 禁止SSH暴力扫描
https://bbs.zephyrxt.com/forum.php?mod=viewthread&tid=4191&fromuid=6
安装denyhost防止SSH和FTP被暴力破解
https://bbs.zephyrxt.com/forum.php?mod=viewthread&tid=4196&fromuid=6

增强ssh安全性的技巧
https://bbs.zephyrxt.com/thread-4998-1-1.html
设置 SSH 自动登陆(免密码,用户名)
https://bbs.zephyrxt.com/thread-9397-1-1.html

vps开设最低权限的ssh帐号
https://bbs.zephyrxt.com/thread-3708-1-1.html

 

收到1条评论
avatar
ZephyrXT 2019-10-13 20:02
https://blog.csdn.net/ithomer/article/details/89530790

清空 /var/log/journal 文件的方法

1、用echo命令,将空字符串内容重定向到指定文件中

echo "" > system.journal

说明:此方法只会清空一次,一段时间后还要再次手动清空很麻烦,这里可以用以下命令让journalctl 自动维护空间

 

2、journalctl 命令自动维护文件大小

1)只保留近一周的日志

journalctl --vacuum-time=1w

 

2)只保留500MB的日志

journalctl --vacuum-size=500M

 

3)直接删除 /var/log/journal/ 目录下的日志文件

rm -rf /var/log/journal/f9d400c5e1e8c3a8209e990d887d4ac1
————————————————
版权声明:本文为CSDN博主「阳光岛主」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ithomer/article/details/89530790