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
  • 只可使用秘钥登录
相关推荐
荒Huang14 分钟前
Linux挖矿病毒(kswapd0进程使cpu爆满)
linux·运维·服务器
海阔天空_201324 分钟前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
桥田智能27 分钟前
气爪在自动化装配线中是如何应用的?
运维·自动化
Suckerbin2 小时前
Hms?: 1渗透测试
学习·安全·网络安全
€☞扫地僧☜€2 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器
hjjdebug2 小时前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal
其乐无涯2 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流2 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
写bug的小屁孩2 小时前
前后端交互接口(三)
运维·服务器·数据库·windows·用户界面·qt6.3
斑布斑布2 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习