Skip to main content

此版本的 GitHub Enterprise Server 已于以下日期停止服务 2024-03-26. 即使针对重大安全问题,也不会发布补丁。 为了获得更好的性能、更高的安全性和新功能,请升级到最新版本的 GitHub Enterprise。 如需升级帮助,请联系 GitHub Enterprise 支持

访问管理 shell (SSH)

SSH 访问可让您运行 GitHub Enterprise Server 命令行实用程序,以进行故障排除、运行备份及配置复制。

关于管理 shell 访问

如果您有权限通过 SSH 访问管理 shell,可运行 GitHub Enterprise Server 的命令行实用程序。 SSH 访问也可用于故障排查、运行备份和配置复制。 管理 SSH 访问与 Git SSH 访问分开管理,仅可通过端口 122 访问。

允许通过 SSH 访问管理 shell

要启用管理 SSH 访问,您必须向授权密钥的实例列表添加 SSH 公钥。 有关详细信息,请参阅“生成新的 SSH 密钥并将其添加到 ssh-agent”。

  1. 在 GitHub Enterprise Server 上的管理帐户中,在任一页面的右上角,单击
  2. 如果你尚未在“站点管理员”页上,请在左上角单击“站点管理员”。
  3. 在“ 站点管理”边栏中,单击“管理控制台”。
  4. 在“SSH 访问”下,将密钥粘贴到“添加新的 SSH 密钥”文本框中,然后单击“添加密钥”。 更改会立即生效,因此无需单击“保存设置”。

通过 SSH 连接到管理 shell

将 SSH 密钥添加到列表后,以 admin 用户的身份在端口 122 上通过 SSH 连接到实例。

$ ssh -p 122 admin@github.example.com
Last login: Sun Nov 9 07:53:29 2014 from 169.254.1.1
admin@github-example-com:~$ █

排查 SSH 连接问题

如果在尝试通过 SSH 连接到 你的 GitHub Enterprise Server 实例 时发生 Permission denied (publickey) 错误,请确认是否是通过端口 122 进行连接的。 您可能需要明确指定要使用的 SSH 私钥。

要使用命令行指定 SSH 私钥,请使用 -i 参数运行 ssh

ssh -i /path/to/ghe_private_key -p 122 admin@HOSTNAME

还可以使用 SSH 配置文件 (~/.ssh/config) 指定 SSH 私钥。

Host HOSTNAME
  IdentityFile /path/to/ghe_private_key
  User admin
  Port 122

使用本地控制台访问管理 shell

在 SSH 不可用等紧急情况下,您可以在本地访问管理 shell。 以 admin 用户身份登录,并使用在 GitHub Enterprise Server 初始设置期间确定的密码。

管理 shell 的访问限制

管理 shell 访问仅可用于故障排查和执行记录的操作程序。 修改系统和应用程序文件、运行程序或安装不受支持的软件包可能导致支持合约失效。 如果你对支持合约允许的活动有任何疑问,请访问 GitHub Enterprise 支持