虚拟主机域名注册-常见问题其他问题 → 其他问题

Linux服务器SSH如何允许或禁止IP的访问

  如果你是一个Linux服务器系统管理员,很可能会花很多时间用SSH登录到远程服务器。也有可能你已经采取了许多措施来锁定SSH对这些远程服务器的访问。事实上,你很可能正在使用SSH密钥认证和denyhosts。这两个解决方案加在一起,可以很好地强化对远程Linux服务器的访问。

  但是,你还可以采取另外一个步骤,这个步骤非常简单和明显,大多数管理员甚至忘记了它是一个选项。这个特殊的步骤不需要任何第三方软件,几秒钟就可以搞定。

  准备工作:

  运行SSH守护程序的Linux服务器

  需要访问服务器的任何客户端的IP地址

  您还应该可以访问远程服务器的控制台,以防万一出现问题并将自己锁定在服务器之外,但是任何时候使用SSH都是如此。

  1、如何允许客户端IP地址

  我们要做的第一件事是通过SSH将您使用的任何客户端的IP地址允许到远程服务器中。获得IP地址列表后,可以将它们添加到/etc/hosts.allow。为此,请发出命令(在远程服务器上):

  sudo nano /etc/hosts.allow

  在该文件的底部,添加以下内容:

  sshd: IP

  其中IP是需要访问服务器的远程客户端的IP地址。如果您有许多IP地址或IP地址范围,则可以这样输入:

  sshd:10.83.33.77/32、10.63.152.9/32、10.12.100.11/28、10.82.192.0/28

  或者像这样:

  sshd : 192.168.1.0/24

  sshd : 127.0.0.1

  sshd : [::1]

  上面的注释:我们甚至包括了服务器的回送地址。

  保存并关闭文件。

  2、如何阻止所有其他地址

  现在我们已经允许使用IP地址或地址列表,现在该阻止所有其他地址了。要记住的一件事是,Linux系统将首先查看hosts.allow(从上到下),然后是hosts.deny(从上到下)。因此,即使hosts.deny明显阻止了所有内容,也将允许通过hosts.allow中的IP地址进行SSH连接尝试。

  因此,要阻止所有其他IP地址,请使用以下命令打开必要的文件:

  sudo nano /etc/hosts.deny

  在该文件的底部,添加以下内容:

  sshd: ALL

  保存并关闭文件。

  此时,hosts.allow中列出的任何客户端将被允许通过(通过SSH),而未列出的任何客户端将被拒绝。无需重新启动SSH守护程序即可完成此工作。

  结合使用SSH密钥身份验证,denyhosts和hosts.allow / deny,对Linux服务器的安全外壳访问将尽可能地紧密。




免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:bkook@qq.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
【 双击滚屏 】 【 推荐朋友 】 【 收藏 】 【 打印 】 【 关闭 】 【 字体: 】 
上一篇:使用noatime提升linux文件系统性能的方法
下一篇:CentOS上安装和使用Docker Compose的操作方法
  >> 相关文章
0

在线
客服

在线客服服务时间:9:00-18:00

客服
热线

19899115815
7*24小时客服服务热线

关注
微信

关注官方微信
顶部