返回介绍

Hack-31 OpenSSH 安全配置

发布于 2025-03-08 17:38:24 字数 2251 浏览 0 评论 0 收藏 0

OpenSSH 安全配置

OpenSSH 的配置文件为 /etc/ssh/sshd_config

下面介绍了 7 个需要更改的地方,也不能说是需要,只能说,这样做会让你的主机在互联网中更安全。

在上面那个配置文件中,有好多行的开始是一个 # 字符,这表示这个行是一个注释,而里面的配置则是默认的,也让就是说,注释掉的行都是默认配置,你可以把注释取消,然后更改选项。

禁止 root 账户登录

服务器默认是允许 root 登陆的,但是最好不要允许 root 直接登陆,而是用你的账户登陆,然后 su - 来进入 root 账户。

(其实这一点我本人不敢苟同,也有可能是因为手里的服务器都是自己掌控,所以不分你我,但我想大多数人也就一台自用的服务器,这个时候就无所谓那个账户了,而且在后面开启证书验证,关闭密码登陆的时候,服务器是相当安全的(就非法登陆而言,漏洞除外), 所以,如果你只有一台机子而这台机子就你自己用的话,还是忽略这点吧.)

之所以这么做,是因为,如果允许 root 登陆,那么每一个以 root 登录的用户在进行一系列操作之后,无法查出具体是谁做的,也就是,翻了错误可以丢锅... 但是当禁止 root 登陆之后,每个用户要想行使 root 权限,就必须使用 su - , 这一切都是记录下来的 :) 所以犯了错就有据可查咯~

具体操作:

$ vi /etc/ssh/sshd_config
PermitRootLogin no #修改这个地方

允许 特定用户/组登陆

具体操作:

$ vi /etc/ssh/sshd_config
AllowUsers ramesh john jason #允许登陆的用户
AllowGroups sysadmin dba #允许登陆的用户组

禁止 特定用户/组登陆

具体操作:

$ vi /etc/ssh/sshd_config
DenyUsers ramesh john jason #禁止登陆的用户
DenyGroups sysadmin dba #禁止登陆的用户组

更改 sshd 的默认端口

SSHD 默认登陆端口为 22 , 安全起见(防止被爆破), 最好改成一个乱七八糟的端口

$ vi /etc/ssh/sshd_config
Port 23333

更改登陆时限

默认的时间限制是 2 分钟,如果 2 分钟内没有成功登陆,服务器就会断开连接. 2 分钟貌似有点长,所以我们最好把他改小点:

$ vi /etc/ssh/sshd_config
LoginGraceTime 1m

更改监听的网卡

假设服务器有四个网卡,每个网卡对应的 IP 地址分别是:

  • eth0 – 192.168.10.200
  • eth1 – 192.168.10.201
  • eth2 – 192.168.10.202
  • eth3 – 192.168.10.203

但是你只想在特定的网卡上监听服务,那么你就可以在配置文件中写道:

$ vi /etc/ssh/sshd_config
ListenAddress 192.168.10.200 # 这是网卡 0
ListenAddress 192.168.10.202 # 这是网卡 2

不活动时断开连接

这个不活动,指的是没有命令执行,无论命令成功获失败,也就是说,只要你在某一时间段内没有按下回车,且当前没有任务在运行,那么服务器就会主动断开连接(把你踢出去).

如果是在 bash 里面,可以利用 TMOUT 这个变量。

在 OpenSSH 中,可以这样修改:

$ vi /etc/ssh/sshd_config
ClientAliveInterval 600
ClientAliveCountMax 0 #从不检查

设置 600 内,如果无活动就断开连接。

本书简介:

  • Linux 进阶技巧
  • 巧妙的命令组合
  • Bash 某些技巧
  • 一共一百零一个(包括充数的)
  • 最后有个奖励章(额外技巧)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文