linux安全加固

安全加固

编辑配置

  • vim /etc/ssh/sshed_conifg
  • set nu显示行号

1、端口保护

  • /port
  • 找到port,修改为不常用的端口
  • 保存并退出
  • 建立连接时,若端口不一致,则连接失败

2、登录验证总耗时:1分钟

  • /LoginGraceTime 1m
  • 找到登录验证时间,改为1分钟
  • 保存并退出
  • 登录时1分钟之内未登录成功,则断开连接

3、禁止root用户远程连接

  • /PermitRootLogin
  • 找到root远程登录,yes改为no
  • 保存并退出
  • 禁止root用户远程登录登录

4、密码最大试错次数

  • /MaxAuthTries
  • 空白处添加一条MaxAuthTries 2
  • 保存并退出
  • 密码最大试错次数为2

5、允许用户登录

  • /AllowUsers(白名单) 服务器用户@远程主机地址
  • 空白处添加一条白名单
  • 保存并退出
  • 白名单:只允许名单内的用户远程连接服务器
  • 黑名单:名单内的用户不允许远程连接服务器

重启ssh

  • /etc/init.d/ssh restart

命令行超时限制

  • 超时退出时间设为30秒
  • vim /etc/profile
  • 在第三行添加export TMOUT=30

设置用户密码的使用期限:

针对于所有用户1

  • 编辑vim /etc/login.defs
  • /PASS_MAX_DAYS 密码最长使用天数
    针对单个用户
  • chage -M 天数 用户名 密码最大使用期限
  • chage -l 用户名 查看用户密码使用期限

为了防止密码被破坏,需要秘钥来加密

  • 私钥加密公钥解,公钥加密私钥解

用moba执行

  • 先将本地旧文件删除
  • rm -rf .ssh/*
  • 创建新秘钥
  • ssh-keygen
  • 查看.ssh
  • ls .ssh
  • id_rsa(私钥)id_rsa.pub(公钥)
  • 将公钥上传到服务器
  • ssh-copy-id root@服务器地址
  • 使用私钥进行连接,不用再输入密码

或者cmd命令行执行

  • 查看文件
  • dir .ssh
  • 然后找到文件所在地,删除旧文件
  • 生成新秘钥
  • ssh-keygen
  • 将id_rsa.pub文件上传到目标主机
  • scp .ssh/id_rsa.pub root@主机地址:~/.ssh/authorized_keys
  • 使用秘钥登录

禁用密码认证方式,避免密码暴力破解

  • vim /etc/ssh/sshd_config
  • 找到密码认证
  • /PasswordAuthentication 去掉"#","yes"改成"no"
  • 保存并退出
  • 重启ssh服务
  • /etc/init.d/ssh restart
  • 只可使用秘钥登录
相关推荐
FREEDOM_X8 分钟前
Linux 多线程编程——总结
java·linux·运维·ubuntu
名字还没想好☜21 分钟前
Docker 多阶段构建:把镜像从 1.2GB 砍到 15MB
运维·docker·容器·多阶段构建·镜像优化
祸心依旧28 分钟前
Visual Studio 五月更新 —— 计划、评审、优化
运维·人工智能·visual studio
Web4Browser44 分钟前
Headless 浏览器自动化适合哪些任务?巡检、截图和提交动作要分级
运维·前端·自动化
難釋懷1 小时前
Nginx浏览器强制缓存
运维·nginx·缓存
小刘数字化1 小时前
告别爬塔危险:AR眼镜如何重构电力高空巡检安全标准
安全·重构·ar
大博士.J1 小时前
视频号主体违规与认证上限?正确的解决方式
运维·python·自动化
txg6661 小时前
网络安全领域简报(2026年7月3日—10日)
安全·web安全·网络安全
数据库小学妹1 小时前
MySQL安全加固全流程:网络隔离、TDE加密、数据脱敏、等保合规7步实战
mysql·安全·数据脱敏·审计日志·安全加固·等保合规
hey you~2 小时前
400电话选型技术测评:一个开发视角的线路质量评估方案
运维·网络·数据库·400电话·企业通信