无法通过SSH克隆

时间:2019-07-22 03:02:33

标签: git ssh rhodecode

我找到了this topic/thread,但是我的问题是 not RC是由错误的用户运行的。我的SSH克隆URL看起来像这样:ssh://root@my.tld/another-test,并且访问被拒绝。

但是,HTTP克隆工作正常。

我的公钥也位于我的RC配置文件中。以下是cat /var/log/auth.log的内容:

Jul 21 01:52:05 CODE sshd[21525]: Accepted publickey for root from [REDACTED] port 50481 ssh2: RSA SHA256:qwerty
Jul 21 01:52:05 CODE sshd[21525]: pam_unix(sshd:session): session opened for user root by (uid=0)
Jul 21 01:52:05 CODE systemd-logind[847]: New session 1607 of user root.
Jul 21 01:52:06 CODE sshd[21525]: Received disconnect from [REDACTED] port 50481:11: disconnected by user
Jul 21 01:52:06 CODE sshd[21525]: Disconnected from user root [REDACTED] port 50481
Jul 21 01:52:06 CODE sshd[21525]: pam_unix(sshd:session): session closed for user root
Jul 21 01:52:06 CODE systemd-logind[847]: Removed session 1607.

不太确定我在做什么错。

/root/.rccontrol/community-1/rhodecode.ini中,我在SSH部分中看到了这一点:

## AuthorizedKeysFile %h/.ssh/authorized_keys %h/.ssh/authorized_keys_rhodecode
ssh.authorized_keys_file_path = ~/.ssh/authorized_keys_rhodecode

我想也许我应该使用ssh.authorized_keys_file_pathAuthorizedKeysFile,但是rccontrol status不喜欢...

RHODECODE CONTROL VERSION: 1.23.0
Failed to parse /root/.rccontrol/community-1/rhodecode.ini
Invalid line ('AuthorizedKeysFile %h/.ssh/authorized_keys %h/.ssh/authorized_keys_rhodecode') (matched as neither section nor keyword) at line 589.

cat /root/.rccontrol/vcsserver-1/vcsserver.log的输出:

KeyError: 'HEAD'
2019-07-21 02:02:22.883 [1099] INFO  [vcsserver.tweens] IP: 127.0.0.1 Request to path: `/git` time: 0.005s
2019-07-21 02:02:22.887 [<1099>  ] GNCRN 127.0.0.1       rqt:0.009307 200 51     "POST:/git " usr:- "-" "PycURL/7.43.0.2 libcurl/7.59.0 OpenSSL/1.0.2p zlib/1.2.11 libssh2/1.8.0 nghttp2/1.24.0"
2019-07-21 02:02:50.693 [1099] DEBUG [vcsserver.http_main] method called:assert_correct_path with kwargs:{} context_uid: [REDACTED]
2019-07-21 02:02:50.693 [1099] DEBUG [dogpile.lock] NeedRegenerationException
2019-07-21 02:02:50.693 [1099] DEBUG [dogpile.lock] no value, waiting for create lock
2019-07-21 02:02:50.694 [1099] DEBUG [dogpile.lock] value creation lock <dogpile.cache.region._LockWrapper object at 0x7f42aeecd590> acquired
2019-07-21 02:02:50.694 [1099] DEBUG [dogpile.lock] Calling creation function for not-yet-present value
2019-07-21 02:02:50.694 [1099] DEBUG [dogpile.lock] Released creation lock
2019-07-21 02:02:50.695 [1099] INFO  [vcsserver.tweens] IP: 127.0.0.1 Request to path: `/git` time: 0.002s
2019-07-21 02:02:50.695 [<1099>  ] GNCRN 127.0.0.1       rqt:0.002517 200 51     "POST:/git " usr:- "-" "PycURL/7.43.0.2 libcurl/7.59.0 OpenSSL/1.0.2p zlib/1.2.11 libssh2/1.8.0 nghttp2/1.24.0"
2019-07-21 02:02:50.869 [1099] DEBUG [vcsserver.http_main] http-app: handling git stream
2019-07-21 02:02:50.869 [1099] DEBUG [vcsserver.http_main] LFS: Detecting if request `/another-test/info/refs` is LFS server path based on content type:``, is_lfs:False
2019-07-21 02:02:50.869 [1099] DEBUG [vcsserver.http_main] LFS: fallback detection by path of: `/another-test/info/refs`, is_lfs:False
2019-07-21 02:02:50.869 [1099] DEBUG [vcsserver.http_main] http-app: starting app handler with <vcsserver.scm_app.GitHandler object at 0x7f42aeecd590> and process request
2019-07-21 02:02:50.878 [1099] INFO  [vcsserver.tweens] IP: 127.0.0.1 Request to path: `/another-test/info/refs` time: 0.010s
2019-07-21 02:02:50.879 [<1099>  ] GNCRN 127.0.0.1       rqt:0.010726 200 38     "GET:/another-test/info/refs service=git-upload-pack" usr:- "-" "git/2.20.1 (Apple Git-117)"

编辑:目前,我正在通过git config --global credential.helper store(从本地计算机)使用存储的git凭据,因此可以克隆我的私有存储库。不过,这是不希望的,SSH操作应该可以工作。

编辑2:我没有得到这个,也没有RhodeCode令牌起作用,所以它是git凭证。如果我确定问题/解决方案,请在这里更新。

1 个答案:

答案 0 :(得分:1)

  

我认为也许我应该使用ssh.authorized_keys_file_path

您应确保公钥位于ssh.authorized_keys_file_path文件中,即~/.ssh/authorized_keys_rhodecode
如果您将rhodecode.ini用作per the documentation,则无需触摸rccontrol enable-module ssh {instance-id}

问题是more about LFS though

except KeyError:
    log.exception('LFS, failed to extract data')