Linux系统中创建SSH服务器别名的两种方法
前言
如果你经常通过 ssh 访问许多不同的远程系统,这个技巧将为你节省一些时间。你可以通过 ssh 为频繁访问的系统创建 ssh 别名,这样你就不必记住所有不同的用户名、主机名、ssh 端口号和 ip 地址等。此外,它避免了在 ssh 到 linux 服务器时重复输入相同的用户名、主机名、ip 地址、端口号。
在 linux 中创建 ssh 别名
在我知道这个技巧之前,我通常使用以下任意一种方式通过 ssh 连接到远程系统。
使用 ip 地址:
?1 | $ ssh 192.168.225.22 |
或使用端口号、用户名和 ip 地址:
?1 | $ ssh -p 22 sk@192.168.225.22 |
或使用端口号、用户名和主机名:
?1 | $ 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 文件(如果此文件不存在,只需创建一个):
?1 | $ vi ~/. ssh /config |
添加所有远程主机的详细信息,如下所示:
host webserver
hostname 192.168.225.22
user skhost dns
hostname server.example.com
user roothost dhcp
hostname 192.168.225.25
user ostechnix
port 2233
使用 ssh 配置文件在 linux 中创建 ssh 别名
将 host、hostname、user 和 port 配置的值替换为你自己的值。添加所有远程主机的详细信息后,保存并退出该文件。
现在你可以使用以下命令通过 ssh 进入系统:
?1 2 3 | $ 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 密钥文件路径。
现在使用以下命令连接到远程服务器:
?1 | $ ssh ubuntu |
这样,你可以添加希望通过 ssh 访问的任意多台远程主机,并使用别名快速访问它们。
方法 2 – 使用 bash 别名
这是创建 ssh 别名的一种应急变通的方法,可以加快通信的速度。你可以使用 alias 命令使这项任务更容易。
打开 ~/.bashrc 或者 ~/.bash_profile 文件:
?1 2 3 4 | 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 地址。保存文件并退出。
然后,使用命令应用更改:
?1 | $ source ~/.bashrc |
或者
?1 | $ source ~/.bash_profile |
在此方法中,你甚至不需要使用 ssh 别名 命令。相反,只需使用别名,如下所示。
?1 2 3 4 | $ webserver $ dns $ dhcp $ ubuntu |
这两种方法非常简单,但对于经常通过 ssh 连接到多个不同系统的人来说非常有用,而且非常方便。使用适合你的上述任何一种方法,通过 ssh 快速访问远程 linux 系统。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。
原文链接:https://www.linuxidc.com/Linux/2019-05/158868.htm
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。