如何在Linux中创建SSH别名

发表于:2019-5-15 10:00

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Sk    来源:Linux中国

  如果你经常通过 SSH 访问许多不同的远程系统,这个技巧将为你节省一些时间。你可以通过 SSH 为频繁访问的系统创建 SSH 别名,这样你就不必记住所有不同的用户名、主机名、SSH 端口号和 IP 地址等。此外,它避免了在 SSH 到 Linux 服务器时重复输入相同的用户名、主机名、IP 地址、端口号。
  在 Linux 中创建 SSH 别名
  在我知道这个技巧之前,我通常使用以下任意一种方式通过 SSH 连接到远程系统。
  使用 IP 地址:
 $ ssh 192.168.225.22
  或使用端口号、用户名和 IP 地址:
 $ ssh -p 22 sk@192.168.225.22
  或使用端口号、用户名和主机名:
  $ ssh -p 22 sk@server.example.com
  这里
  22 是端口号,
  sk 是远程系统的用户名,
  192.168.225.22 是我远程系统的 IP,
  server.example.com 是远程系统的主机名。
  我相信大多数 Linux 新手和(或一些)管理员都会以这种方式通过 SSH 连接到远程系统。但是,如果你通过 SSH 连接到多个不同的系统,记住所有主机名或 IP 地址,还有用户名是困难的,除非你将它们写在纸上或者将其保存在文本文件中。别担心!这可以通过为 SSH 连接创建别名(或快捷方式)轻松解决。
  我们可以用两种方法为 SSH 命令创建别名。
  方法 1 – 使用 SSH 配置文件
  这是我创建别名的首选方法。
  我们可以使用 SSH 默认配置文件来创建 SSH 别名。为此,编辑 ~/.ssh/config 文件(如果此文件不存在,只需创建一个):
 $ vi ~/.ssh/config
  添加所有远程主机的详细信息,如下所示:
   Host webserver
  HostName 192.168.225.22
  User sk
  Host dns
  HostName server.example.com
  User root
  Host dhcp
  HostName 192.168.225.25
  User ostechnix
  Port 2233
 
  使用 SSH 配置文件在 Linux 中创建 SSH 别名
  将 Host、Hostname、User 和 Port 配置的值替换为你自己的值。添加所有远程主机的详细信息后,保存并退出该文件。
  现在你可以使用以下命令通过 SSH 进入系统:
   $ ssh webserver
  $ ssh dns
  $ ssh dhcp
  就是这么简单!
  看看下面的截图。
  使用 SSH 别名访问远程系统
  看到了吗?我只使用别名(例如 webserver)来访问 IP 地址为 192.168.225.22 的远程系统。
  请注意,这只使用于当前用户。如果要为所有用户(系统范围内)提供别名,请在 /etc/ssh/ssh_config 文件中添加以上行。
  你还可以在 SSH 配置文件中添加许多其他内容。例如,如果你已配置基于 SSH 密钥的身份验证,说明 SSH 密钥文件的位置,如下所示:
   Host ubuntu
  HostName 192.168.225.50
  User senthil
  IdentityFIle ~/.ssh/id_rsa_remotesystem
  确保已使用你自己的值替换主机名、用户名和 SSH 密钥文件路径。
  现在使用以下命令连接到远程服务器:
 $ ssh ubuntu
  这样,你可以添加希望通过 SSH 访问的任意多台远程主机,并使用别名快速访问它们。
  方法 2 – 使用 Bash 别名
  这是创建 SSH 别名的一种应急变通的方法,可以加快通信的速度。你可以使用 alias 命令使这项任务更容易。
  打开 ~/.bashrc 或者 ~/.bash_profile 文件:
   alias webserver='ssh sk@server.example.com'
  alias dns='ssh sk@server.example.com'
  alias dhcp='ssh sk@server.example.com -p 2233'
  alias ubuntu='ssh sk@server.example.com -i ~/.ssh/id_rsa_remotesystem'
  再次确保你已使用自己的值替换主机、主机名、端口号和 IP 地址。保存文件并退出。
  然后,使用命令应用更改:
 $ source ~/.bashrc
  或者
 $ source ~/.bash_profile
  在此方法中,你甚至不需要使用 ssh 别名 命令。相反,只需使用别名,如下所示。
  $ webserver
  $ dns
  $ dhcp
  $ ubuntu
  
     这两种方法非常简单,但对于经常通过 SSH 连接到多个不同系统的人来说非常有用,而且非常方便。使用适合你的上述任何一种方法,通过 SSH 快速访问远程 Linux 系统。

       上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号