安全加固
编辑配置
- 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
- 只可使用秘钥登录