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权限,谨慎操作避免影响系统稳定性。

相关推荐
wuminyu2 分钟前
JVM锁膨胀与Futex源码解析
java·linux·c语言·jvm·c++
happymade3 分钟前
7000 台网络设备批量纳管 & 自动拓扑生成实战——MSRM3 完整操作流程与关键要点复盘
运维·服务器·网络·zabbix·grafana·msrm3
斑马13913 分钟前
Linux软件编程学习笔记(十一)——HTTP协议
linux·笔记·学习
做萤石二次开发的哈哈16 分钟前
萤石蓝海 AIoT 一站式工作台:海康LCD会议平板接入,多端大屏运维应用一站生成
运维·物联网·电脑·萤石开放平台·会议室管理·蓝海aiot一站式工作台·otap物模型
OpenPomeloxCommunity19 分钟前
Linux驱动基础(一):模块机制的设计与实现
linux
Shadow(⊙o⊙)28 分钟前
Linux网络——文件与网络的连接桥梁struct sock {
linux·运维·网络
其实防守也摸鱼37 分钟前
教育信息技术应用创新---基础软件信息赛(题库)
大数据·运维·人工智能·web安全·自动化
新时代牛马40 分钟前
Linux 性能调优与追踪完整篇:ftrace、perf、eBPF从采样到落地验证
linux·运维·服务器
sunoo-2291 小时前
【网络编程 + 数据库】select 与 epoll 核心区别详解 + SQLite 入门到 C 接口全攻略
linux·网络·数据库·vscode·学习·sqlite
zbyyd1 小时前
Linux 系统编程 :select/epoll 多路复用与 SQLite 数据库实战
linux·数据库·sqlite