gitea:内置 ssh 服务器在 sshd 服务器 运行 时未启动

gitea: Built-in ssh server not starting when sshd server running

我的 raspberry pi 上的 gitea 版本 1.15.5 运行 有问题。我似乎内置的 ssh 服务器没有启动:

ssh -p 2222 git@myaddress.com
ssh: connect to host myaddress.com port 2222: Connection refused

我已经确定“myaddress.com”指向正确的机器并且防火墙规则已调整。 Web 界面工作正常。

我查了一下,如果端口真的是gitea用的,才发现内置的ssh server不是运行:

sudo lsof -i -P -n | grep LISTEN

sshd        [...]      root    [...]  TCP *:22 (LISTEN)
sshd        [...]      root    [...]  TCP *:22 (LISTEN)
[...]
gitea       [...]       git    [...]  TCP *:3000 (LISTEN)

可以看到,没有进程监听2222端口。 我在那台机器上的端口 22 上有一个内部 sshd 服务器 运行,如果可能的话,我想将这两个服务器分开。还是问题就在那里,您不能将内置的 gitea ssh 服务器与 sshd 服务器一起使用?

这是我的 app.ini 配置的摘录:

APP_NAME = gitea
RUN_USER = git
RUN_MODE = prod

[server]
SSH_DOMAIN       = myaddress.com
DOMAIN           = myaddress.com
HTTP_PORT        = 3000
ROOT_URL         = https://myaddress.com/
DISABLE_SSH      = false
SSH_PORT         = 2222

经过更多谷歌搜索,我自己找到了解决方案:

如果有sshd服务器运行,gitea不会自动启动其内置的ssh服务器。相反,您必须通过在 app.ini 配置中的 [server] 下添加此行来强制执行它:

[server]
START_SSH_SERVER = true

因为,根据 gitea config cheat sheet:

START_SSH_SERVER: false: When enabled, use the built-in SSH server.

我已经发布了这个,以防有人遇到同样的问题。