我有问题了,我想知道这里是否有人能帮上忙:
我想用mysql安装gitea作为docker--在我的synology上安装DSM 7,但是我无法让ssh工作。
简而言之,我的设置(不是真正的信息,而是一致的:-)
Synology: 192.168.1.5
ssh port: 10222
user (that runs container): git (1058)
shell: ssh-shell script which does this:
#!/bin/sh
shift
ssh -p 19022 -o StrictHostKeyChecking=no git@127.0.0.1 "SSH_ORIGINAL_COMMAND=\"$SSH_ORIGINAL_COMMAND\" $@"
gitea码头:
user that runs in container: git (1058)
ssh port: 19022
volume mounts:
- data
- ~/.ssh folder from host user
将主机用户的.ssh文件夹挂载到容器中的想法是,当我在gitea中为用户添加ssh键时,它也应该在主机级别上添加,这样ssh与用户的连接可以首先在主机上工作,然后在容器中工作。
据我所知,水流是这样的。
用户在gitea authorized_keys
)。
问题是,当我这么做的时候,尝试用我添加到giteas web ui中的公钥的正确私钥从另一台机器连接,我会收到一个密码挑战,就好像我没有提供一个身份文件一样。
在这条链子里的某个地方是一个错误的误会,不管是什么让我疯狂的事情:-
有什么提示要怎么处理吗?
谢谢大家的问候,
伍尔兹尔皮
发布于 2022-05-29 21:39:32
在尝试从运行在Synology DS218上的gitea实例(不是码头安装、手动安装,但非常类似的非无设置)克隆存储库时,我遇到了同样的问题,配置为使用NAS服务器(而不是gitea内置ssh服务器)。
对我来说,诀窍是为运行gitea实例的用户的home和ssh目录设置访问权限:
sudo chown -R gitea:users /volume1/homes/gitea
sudo chmod 0600 /volume1/homes/gitea/.ssh/authorized_keys
sudo chmod 0700 /volume1/homes/gitea/.ssh
sudo chmod 0755 /volume1/homes/gitea
另外,只有组'admin‘的用户成员才能在Synology上使用SSH。
虽然这是构造函数推荐的方法,但出于安全原因,我选择不将'gitea‘用户添加到'admin’组。为了能够使用ssh进行连接,我修改了/etc/passwd
(但您可以选择使用“标准”方式而忽略这一点):
gitea:x:1028:100:Gitea (System user):/var/services/homes/gitea:/bin/sh
https://stackoverflow.com/questions/71189027
复制相似问题