bash - 使用需要自定义端口号的 ssh 登录时有什么方法可以隐藏端口号
问题描述
我想登录到具有自定义 ssh 端口的服务器,例如 -
ssh -p <my server port number> root@example.com
现在我想要这样的简短命令(类似于别名),我不需要一次又一次地输入该端口号。像 -
ssh my-short-code
是否可以?如果是,欢迎任何提示。
解决方案
转到您的ssh
配置文件 - 我的在 中$HOME/.ssh/config
,并添加以下内容:
Host example
HostName example.com
User root
Port 2229
然后你可以这样做:
ssh example
如果您希望能够在远程机器上运行 X11 应用程序(例如xclock
或xterm
任何图形软件开发工具),但在本地显示图形,您可以通过在上面显示的之后添加以下 2 行来转发 X11:
ForwardX11 yes
ForwardX11Trusted yes
在评论中回答您的进一步问题。是的,您可以继续添加任意数量的附加服务器,每个服务器使用不同的端口、用户名、保持活动间隔:
Host example
HostName example.com
User root
Port 2229
Host sercon
HostName sercon.onlinehome-server.info
User u8566723
Port 378
StrictHostKeyChecking no
您还可以在开头添加一个通用条目,其中包含大多数服务器所需的设置,然后稍后在各个服务器上覆盖它们:
Host *
Username mark
ServerAliveInterval 10
Host XYZ
<specific stuff for this host>
Host <ABC>
<specific stuff for this host>
要获取更多信息,请在终端中使用:
man ssh_config
如果您碰巧在 Mac 下macOS/OSX
,并且希望 X11 转发与 XQuartz 一起使用,请将以下 3 行放在文件顶部:
Host *
# https://serverfault.com/a/859370/235272
XAuthLocation /opt/X11/bin/xauth
推荐阅读
- php - 有没有办法根据 WooCommerce 上的类别创建自定义产品模板?
- javascript - 如何使用核心javascript一次只显示几张卡片?
- python - 当需要使用AsyncIO和ThreadPoolExecutor时,是否需要手动调用loop.close()?
- reactjs - Cordova 反应应用程序 - 链接在 iframe 中不起作用
- sql - 如何在 Postgresql 中同时更新多个表?
- javascript - 使用带有表单文本字段的 vue js 上传图像
- python - 抓取网站缺失数据
- javascript - 为什么这个 React 组件返回字符串 '0'
- c# - mailkit.net/mimekit.net 从多部分/签名消息中获取原始消息
- android - 如何确定何时退出 Android 应用程序 - 应用程序生命周期而不是活动生命周期