linux系统安全及应用

账户安全控制

查看用户及权限

  • 查看系统所有用户:cat /etc/passwd
  • 查看当前登录用户:whow
  • 检查用户组信息:cat /etc/group
  • 查看用户sudo权限:sudo -l

锁定/解锁账户

  • 锁定用户:sudo usermod -L username
  • 解锁用户:sudo usermod -U username
  • 删除用户:sudo userdel -r username-r同时删除家目录)

密码策略

  • 修改密码过期时间:sudo chage -M 90 username(设置密码90天后过期)
  • 强制下次登录修改密码:sudo chage -d 0 username

系统引导和登录控制

禁用root登录

  • 修改SSH配置:sudo vi /etc/ssh/sshd_config,设置 PermitRootLogin no,重启服务:sudo systemctl restart sshd

控制登录方式

  • 限制SSH登录IP:在 /etc/ssh/sshd_config 中添加 AllowUsers user1@192.168.1.*
  • 禁用密码登录(仅密钥):设置 PasswordAuthentication no

查看登录历史

  • 最近登录记录:last
  • 失败登录尝试:sudo lastb

弱口令检测

使用工具扫描

  • Hydra暴力破解检测:

    复制代码
    hydra -l username -P password_list.txt ssh://192.168.1.1

    -l指定用户,-P指定密码字典)

本地密码强度检查

  • 使用 cracklib-check

    复制代码
    echo "password" | cracklib-check
  • 检查空密码:sudo awk -F: '($2 == "") {print $1}' /etc/shadow

密码策略强化

  • 安装密码策略模块:sudo apt install libpam-cracklib

  • 编辑 /etc/pam.d/common-password,添加复杂度规则:

    复制代码
    password requisite pam_cracklib.so retry=3 minlen=8 difok=3 ucredit=-1 lcredit=-1 dcredit=-1

端口扫描

主动扫描工具

  • Nmap基础扫描:

    复制代码
    nmap -sV -O 192.168.1.1

    -sV探测服务版本,-O识别操作系统)

  • 快速扫描:nmap -F 192.168.1.1(仅扫描常用端口)

检测本机开放端口

  • 使用 netstat

    复制代码
    netstat -tuln

    -tTCP,-uUDP,-l监听状态,-n禁用域名解析)

  • 使用 ss

    复制代码
    ss -tuln

防火墙管理

  • 查看iptables规则:sudo iptables -L

  • 禁止特定端口:

    复制代码
    sudo iptables -A INPUT -p tcp --dport 22 -j DROP

注意:部分命令需root权限,谨慎操作避免影响系统稳定性。

相关推荐
0xDevNull7 小时前
Linux Docker 安装与使用详细教程
linux·运维·docker
zzzsde7 小时前
【Linux】进程间通信(2)命名管道&&共享内存
linux·运维·服务器
铅笔小新z7 小时前
【Linux】进程(下)
java·linux·运维
IT北辰7 小时前
centos 安装最新jdk25
linux·运维·centos
菱玖7 小时前
Centos重连IP改变问题解决
linux·tcp/ip·centos
Industio_触觉智能7 小时前
玩转RK3588远程控制,Ubuntu22.04 Wayland安装RustDesk工具
linux·ubuntu·rk3588·远程工具·rustdesk·wayland·ubuntu22.04
idolao7 小时前
傲梅分区助手 使用教程:免安装硬盘分区管理工具
linux·运维·服务器
观无7 小时前
Jenkins 完整搭建 + .NET8 全自动发布
运维·jenkins
cyber_两只龙宝7 小时前
【Nginx】Nginx配置负载均衡详解
linux·运维·nginx·云原生·负载均衡
Deitymoon7 小时前
linux——信号量
linux