网站首页 > 博客文章 正文
目前,很多的站点和服务都运行在Linux服务器上。而Linux日常运维和安全也是管理员的基本要求。本文简单的为你介绍Linux系统中常用的命令和日志文件,能够帮助安全运维人员更有效地管理和保护Linux环境。
Linux基础命令
文件和目录操作
ls:列出目录内容。
使用ls -l 可以显示详细信息,在日常运维中,主要检查文件权限和修改时间。
find:查找文件。
#按修改时间搜索:
find / -mtime -1:#搜索在过去24小时内修改的文件
find / -mmin -30:#搜索在过去30分钟内修改的文件
#按用户和组搜索:
find / -user username:搜索属于指定用户的所有文件
find / -group groupname:搜索属于指定组的所有文件
#组合条件搜索:
find / -name "*.log" -mtime -7:#搜索在过去7天内修改过的所有.log文件
find / -size +1M -size -5M:#搜索大小在1MB到5MB之间的文件
#忽略某些目录:
find / -path /path/to/exclude -prune -o -name "*.txt" -print:#搜索所有.txt文件
#按权限搜索:
find / -perm 644:搜索权限精确匹配644的文件
find / -perm /u=r:搜索用户可读的文件
更多find命令的高级用法,大家可以自行学习。
stat:查看文件或目录的具体信息,如修改时间、访问权限等,这对于确定文件是否被篡改非常关键。
定时任务
通过排查定时任务,可以查看潜在的攻击任务。在安全事件响应中,是常见的步骤之一。常用排除命令如下:
crontab:管理用户的定时任务。
crontab -e:编辑定时任务。
crontab -l:查看当前定时任务列表。
/etc/crontab:定时任务配置文件。
权限管理
在Linux中,权限管理是非常重要的。他决定了该风险程序能否正常执行。在Linux中,常用的权限管理命令为chmod 和 chown。chmod 用于更改文件或目录的访问权限如
chmod +x kali.sh #给kali.sh 以root身份权限
chown 更改文件或目录的所有者和/或所属组如
chown user:group www #www 目录所属user用户
文件目录的所有者和归属组
用户和组管理
在Linux中,攻击者可以创建一些隐藏的账号来登录系统。常用的命令如下:
useradd:用于创建新用户
userdel:用于删除用户。
usermod:用于修改用户账户,例如更改用户名或所属组。
grep 命令应用:
grep命令一般和awk 和sed等命令结合使用。用来分析日志中的安全响应事件,如对账号和密码的暴力破解。
grep 'Failed' /var/log/auth.log #从日志中获取登录失败的信息
awk -F ':' '{print $1}' /etc/passwd #获取passwd文件中每行的第一列
sed 's/old/new/g' file.txt #将文件中所有old字符串替换为new
系统状态
通过排查占用系统进程比较高的程序,来分析是哪个程序或者服务占用了较高的系统资源。最常见的便是挖矿木马了。常用的命令如下:
top命令
top:显示当前活动的进程。
top -u username显示指定用户的进程,
top -i忽略闲置和僵尸进程。
df 和du:磁盘使用情况。
df -h可以显示本地磁盘的使用情况。
网络和进程监控
通过排查当前设备的网络和端口连接状态,从而获取异常的网络链接。常用的排除命令有:
netstat -tuln 查看所有监听端口
netstat -an | grep ESTABLISHED 查看建立的网络连接。
当然,我们可以使用更加轻量化的工具ss
ss -tuln 查看监听端口
ss -tp 显示哪些进程正在使用哪些端口。
进程排查
在Linux中,利用ps命令可以查看当前进程。常用的命令如下:
ps -aux #显示所有进程的详细列表,
ps -aux | grep httpd #查找所有运行的httpd进程。
lsof #列出被进程打开的文件,
lsof -i :80 #显示所有打开80端口的进程。
日志分析
在Linux中,日志文件是非常重要的,他记录了攻击者的各类操作和攻击手段。常见的日志文件和说明如下:
- 安全日志/var/log/secure 如SSH暴力破解记录
- 系统日志:/var/log/syslog记录系统运行信息
- Web服务日志:/var/log/access.log 和 /var/log/error.log 记录Web访问和错误信息对于分析网站安全事件至关重要
- 内核日志:/var/log/kern.log 用于调查系统崩溃和硬件问题
- 历史命令日志:~/.bash_history 或 /root/.bash_history 记录用户的命令历史,可以用来追踪用户的操作历史,在调查安全事件时非常重要
常用日志分析命令
grep:用于查找特定模式如
grep 'Failed' /var/log/secure #查找失败的登录尝试。
awk:用于复杂的文本处理如
awk '{print $1}' /var/log/auth.log | sort | uniq -c | sort -nr 可以统计登录尝试的频率。
敏感文件
/etc/passwd 和/etc/shadow:存储用户账户信息和加密后的密码,有助于发现未授权的用户账号更改。
/etc/sudoers:定义了哪些用户具有sudo权限,有助于检测未授权的权限提升。
/etc/group:存储用户组信息,包括组名、组密码、组ID和组内成员
/etc/crontab 和 /etc/cron.\*/\*:存储计划任务配置
/root/.ssh/authorized_keys:存储有权限远程访问root用户的SSH密钥。
总结
熟练掌握Linux中的各种命令和对日志的分析是运维的基础。通过这些命令和技巧,我们可以有效地管理系统、诊断问题并保护系统免受安全威胁。当然本文也是简单的进行了说明。更具体的用法还要结果真实的生产环境决定
猜你喜欢
- 2024-12-16 Linux这17个操作技巧是每个运维工程师应知必会的吧?
- 2024-12-16 Linux部分经常使用的命令(SUSE 服务器)
- 2024-12-16 Linux Shell
- 2024-12-16 干货分享:shell脚本批量telnet ip 端口
- 2024-12-16 Linux 系统日常巡检脚本
- 2024-12-16 Linux故障排查思路及常用命令(收藏)
- 2024-12-16 在linux 下怎么查看服务器的cpu和内存的硬件信息
- 2024-12-16 Linux环境中使用netstat和awk命令监控网络连接情况
- 2024-12-16 Linux命令学习神器!命令看不懂直接给你解释
- 2024-12-16 Linux系统查看CPU个数和信息
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- ifneq (61)
- 字符串长度在线 (61)
- googlecloud (64)
- messagesource (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)