虚拟主机域名注册-常见问题服务器知识 → 操作系统

使用 SSH 配置文件怎么在 Linux/Unix 上管理 SSH 连接

  ssh user@server_IP

  这连接到默认的SSH端口22。如果你想的话,你也可以指定端口。

  现在,如果你只有一个服务器,这一切都很简单。即使你不记得服务器的IP地址,你也可以使用快捷键Ctrl+R来进行历史记录的反向搜索,找到你过去使用的SSH命令。

  但当你有几台服务器需要管理时,事情就变得复杂了。如果您有数十台服务器,需要时不时地连接到这些服务器。有些是生产服务器,有些是测试服务器。

  现在要跟踪这些服务器并不容易。即使我能从历史记录中找到SSH命令,也很难猜出哪个IP属于哪个服务器。

  当然,您可以在本地系统上保留一个列表,但更好更简单的方法是使用SSH配置文件。

  使用SSH配置文件轻松连接到远程服务器。

  SSH配置文件允许您为不同的主机配置创建不同的配置文件。此类配置文件没有限制,您可以添加尽可能多的配置文件。

  因此,如果您通过SSH连接到多个远程系统,则创建SSH配置文件将是节省时间的好方法。

  让我告诉你如何使用它。

  1、创建SSH配置文件

  当你安装SSH,你会自动创建一个〜/ .ssh目录。该直接目录包含您的公共密钥,私有密钥一个known_hosts文件。您的配置也存储在这里。

  在Ubuntu上,默认情况下不会创建SSH配置文件。您可以使用如下的touch命令轻松创建此文件:

  touch ~/.ssh/config

  2、在配置文件中添加SSH配置文件

  现在您有了SSH配置文件,您可以使用Vim或Nano对其进行编辑。让我向您展示一个应遵循的语法示例。

  假设您连接到IP 275.128.172.46的服务器。您的用户名是alice,该服务器用于托管您的网站。要加强SSH安全性,请使用端口1500而不是默认的SSH端口22。

  您可以通过以下方式在〜/ .ssh / config文件中添加所有这些信息:

  Host website

  Hostname 275.128.172.46

  User alice

  Port 1500

  只需将信息保存在文件中即可。无需重新启动任何服务。

  现在,而不是像这样写一个长命令:

  ssh alice@275.128.172.46 -p 1500

  您可以只使用以下命令(选项卡补全也可以):

  ssh website

  当您运行上述命令时,ssh在〜/ .ssh / config中查找一个名为website的主机。如果找到具有该名称的主机,它将获取所有相关信息,并将其用于建立SSH连接。

  您可能想知道一些事情,所以在这里我将提及:

  输入主机信息时,没有空格或制表符缩进限制。空格或制表符缩进用于使配置文件易于理解。

  主机名可以是服务器的IP地址,也可以是网络上可以解析的主机名。

  所有参数(例如主机名,用户和端口)都是可选的。但是,我个人建议至少保留主机名,因为多数时候这就是您所需要的(并且您会忘记)。

  如果您的SSH配置文件配置错误,则在尝试将其用于SSH连接时将导致错误。

  您无法在SSH配置中保存密码。我建议您将公共SSH密钥添加到服务器,以方便访问。

  3、在SSH配置文件中添加多个配置文件

  上一步为您提供了有关如何添加SSH配置文件的想法。让我们通过在其中添加多个配置文件来进行下一步。

  SSH配置文件如下所示:

  Host website

  Hostname 275.128.172.46

  User alice

  Port 1500

  Host forum-server

  Hostname 275.128.172.47

  User alice

  Host main-server

  Hostname 275.128.172.49

  Host common-test-server

  Hostname test-server

  Host *

  User root

  这次,我在其中添加了四个不同的SSH配置文件。

  您是否注意到文件末尾的Host *条目?如果尚未为概要文件明确提及该参数,则可以使用此条目添加所有概要文件共有的参数。

  因此,如果我尝试使用主服务器SSH配置文件,它将自动使用root用户。

  ssh main-server = ssh root@275.128.172.49

  4、SSH配置顺序

  ssh配置遵循以下顺序:

  命令行选项

  用户的配置文件(〜/ .ssh / config)

  系统范围的配置文件(/ etc / ssh / ssh_config)

  这意味着,您输入的命令将获得第一优先级,然后依次查找〜/ .ssh / config和/ etc / ssh / ssh_config。

  因此,如果要覆盖配置文件,可以使用ssh命令的-o选项来完成。

  例如,如果我使用以下命令:

  ssh -o "User=bob" website

  将使用用户bob代替〜/ .ssh / config中定义的用户alice(在上一步中)。

  5、SSH配置还有很多

  老实说,SSH配置文件还有很多内容,您还可以使用名称/ IP匹配,子网以及其他内容。本文的目的是向您介绍SSH配置,并帮助您创建SSH配置文件以轻松连接到各种远程Linux系统服务器。




免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:bkook@qq.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
【 双击滚屏 】 【 推荐朋友 】 【 收藏 】 【 打印 】 【 关闭 】 【 字体: 】 
上一篇:Ubuntu 18.04安装Zulip聊天服务器方法
下一篇:Ubuntu 20.04 安装Redis方法教程
  >> 相关文章
没有相关文章。
0

在线
客服

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

客服
热线

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

关注
微信

关注官方微信
顶部