富贵长生天做主由不得我
钢骨正气我做主由不得天

CentOS 清除 SSH 登录记录、历史命令及日志缓存

wget https://raw.githubusercontent.com/AV1080p/logtamper/master/logtamper.py
删除登录IP
躲避管理员w查看

python logtamper.py -m 1 -u re4lity -i 192.168.0.188

清除指定ip的登录日志

python logtamper.py -m 2 -u re4lity -i 192.168.0.188

修改上次登录时间地点

python logtamper.py -m 3 -u re4lity -i 192.168.0.188 -t tty1 -d 2014:05:28:10:11:12


我来补充2条

设置history命令不记录历史
unset HISTORY HISTFILE HISTSAVE HISTZONE HISTORY HISTLOG; export HISTFILE=/dev/null; export HISTSIZE=0

清除重启后的历史
echo > ~/.bash_history
history -cw

清除 SSH 登录记录

SSH 登录日志以二进制方式存储在下面文件内,需要使用对应命令查看,不然会显示乱码。

日志文件 查看命令 日志内容
/var/log/wtmp last 登录成功日志,包含用户名、IP 地址和时间记录
/var/log/btmp lastb 登录失败日志,包含信息同上
/var/log/lastlog lastlog 各用户的最近登录日志
/var/log/secure 用cat查看 各类需要输入口令的登录日志

清除 SSH 登录日志使用下面命令。

cat /dev/null > /var/log/wtmp
cat /dev/null > /var/log/btmp
cat /dev/null > /var/log/lastlog
cat /dev/null > /var/log/secure

清除 Bash 历史命令

Bash 执行过的命令存在用户目录下的 .bash_history 文件里,用 history 命令查看。

清除所有历史命令记录,并立即更新日志文件。

history -c
history -w

如果只需清除当前会话用过的命令记录,用 history -r 命令清除。

删除重复软件包

先安装 yum-utils 软件。

yum -y install yum-utils

列出所有重复的软件包。

package-cleanup --dupes

删除重复软件包,过程中需确认操作。

package-cleanup --cleandupes

清除 YUM 缓存

用法一:清除已启用软件仓库里的所有类型缓存。

yum clean all

延伸:Ubuntu / Debian 用 apt-get clean 命令清除缓存,还可用 apt-get autoremove 清除重复多余软件包。

用法二:添加 –enablerepo=’*’ 选项临时清除禁用状态的软件仓库缓存。

yum --enablerepo='*' clean all

用法三:清除指定类型 YUM 缓存。

命令 作用
yum clean expire-cache 清除元数据和镜像列表的获取时间,使下次使用 YUM 时重新验证缓存。如果缓存数据仍有效,则不会删除任何重要数据。
yum clean packages 清除缓存目录下的软件包。
yum clean headers 清除旧版 YUM 用来确认软件包依赖关系的文件,在下次运行 YUM 时重新下载。
yum clean metadata 清除 YUM 用于确认软件包远程可用性的文件,在下次运行 YUM 时重新下载。
yum clean dbcache 清除加速元数据访问的 sqlite 缓存,下次运行时重新创建(注:不适用仅包含 .xml 数据的软件仓库,其清除后不会重新创建)。
yum clean rpmdb 清除任何本地 rpmdb 中的缓存数据。
yum clean plugins 清除已启用 YUM 插件的缓存数据。
上述列表中的 expire-cache 是较温和选项,可以用来替代 clean all。

清除系统日志文件

已排除上面提到的日志文件。其中 /var/log/messages 是重要日志文件,记录了几乎所有系统错误及重要的相关信息。如果系统出了问题,该文件是经常要检查的项目之一。

cat /dev/null > /var/log/boot.log
cat /dev/null > /var/log/cron
cat /dev/null > /var/log/dmesg
cat /dev/null > /var/log/firewalld
cat /dev/null > /var/log/maillog cat /dev/null > /var/log/messages cat /dev/null > /var/log/spooler
cat /dev/null > /var/log/syslog
cat /dev/null > /var/log/tallylog
cat /dev/null > /var/log/yum.log

关于系统日志文件的路径设置可以查看 /etc/rsyslog.conf 文件,CentOS 旧版本则是 /etc/syslog.conf。

释放内存缓存

内存缓存分 Page Cache 和 Buffer Cache。前者从硬盘读取的文件缓存,譬如 find 查找文件首次速度慢,而后就变快了。后者是 slab 分配器中的对象(Dentry 缓存、Inode 缓存)。为避免清除缓存引发可能的内存 Buffer 数据丢失,清除前先运行 sync 命令使数据写到硬盘。

下面命令将同时清除两种类型缓存。如要选择性清除替换其中数字,1 表示 Page Cache,2表示 Buffer Cache。

sync && echo 3 > /proc/sys/vm/drop_caches

用 free -h 命令检查运行前后的内存 buff/cache 用量,available 表示剩余可用容量。

可以 crontab -e 添加定时释放内存缓存任务。例如每天凌晨 4 点运行一次。

0 4 * * * sync && echo 3 > /proc/sys/vm/drop_caches
赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《CentOS 清除 SSH 登录记录、历史命令及日志缓存》
文章链接:https://www.lolmm.cn/stwd/1073.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

评论前必须登录!