gerrit setup git repo -- 权限被拒绝
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/11983999/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
gerrit setup git repo -- permission denied
提问by yunfei
I am new to gerrit, and I am now trying to setup gerrit a git project.I am now searching help for resolving a permission denied issue, any help is appreciated, thanks in advance.
我是 gerrit 的新手,我现在正在尝试设置 gerrit 一个 git 项目。我现在正在寻找解决权限被拒绝问题的帮助,感谢任何帮助,在此先感谢。
I am using gerrit + http + mysql, I am now have following problem:
我正在使用 gerrit + http + mysql,我现在有以下问题:
As I checked my database, I can not find 'login_type' and 'login_http_head' from "system_config" in my database, which is described http://gerrit.googlecode.com/svn-history/r243/documentation/2.0/config-sso.html
When I click admin->projects, a prompt said "missing project all-projects"
When I checked my accounts from database, there are two empty users (I think it's because I did not set them in the UIweb page)
I cannot register new accounts from UIweb page, I cannot use command line create new users also.
当我检查我的数据库时,我在我的数据库中的“system_config”中找不到“login_type”和“login_http_head”,这在http://gerrit.googlecode.com/svn-history/r243/documentation/2.0/config- sso.html
当我点击 admin->projects 时,提示说“missing project all-projects”
当我从数据库中查看我的帐户时,有两个空用户(我认为是因为我没有在 UIweb 页面中设置它们)
我无法从 UIweb 页面注册新帐户,也无法使用命令行创建新用户。
Following are my steps for ssh-key and register:
以下是我的 ssh-key 和注册步骤:
I used
ssh-keygen -t rsa -b 2048
(Searchign from internet, I don't know what does 2048 mean)I use
git config
to config a nickname and email, I registeredssh-key
by the UIweb page.use
ssh -p 29418 admin@localhost gerrit create-project --name example.git
I got a prompt: "Permission denied (publickkey)."After searching from internet, I used
ssh -vv -p 29418 admin@localhost gerrit
我用过
ssh-keygen -t rsa -b 2048
(从网上搜索,我不知道2048是什么意思)我
git config
用来配置昵称和邮箱,我是ssh-key
通过UIweb页面注册的。使用
ssh -p 29418 admin@localhost gerrit create-project --name example.git
我得到一个提示:“权限被拒绝(公钥)。”从网上搜索后,我用
ssh -vv -p 29418 admin@localhost gerrit
I got the following output:
我得到以下输出:
gerrit2@bst-esa3-bs:~$ ssh -vv -p 29418 admin@localhost gerrit --help
OpenSSH_5.5p1 Debian-4ubuntu6, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to localhost [::1] port 29418.
debug1: Connection established.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug2: key_type_from_name: unknown key type '-----END'
debug1: identity file /home/gerrit2/.ssh/id_rsa type 1
debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
debug1: identity file /home/gerrit2/.ssh/id_rsa-cert type -1
debug1: identity file /home/gerrit2/.ssh/id_dsa type -1
debug1: identity file /home/gerrit2/.ssh/id_dsa-cert type -1
debug1: Remote protocol version 2.0, remote software version GerritCodeReview_2.4.2 (SSHD-
CORE-0.5.1-R1095809)
debug1: no match: GerritCodeReview_2.4.2 (SSHD-CORE-0.5.1-R1095809)
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.5p1 Debian-4ubuntu6
debug2: fd 3 setting O_NONBLOCK
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha256,diffie-hellman-group-
exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: [email protected],[email protected],ssh-
rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-
cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-
[email protected]
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-
cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-
[email protected]
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,hmac-
[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,hmac-
[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,[email protected],zlib
debug2: kex_parse_kexinit: none,[email protected],zlib
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: kex_parse_kexinit: diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,blowfish-cbc,aes192-cbc,aes256-cbc
debug2: kex_parse_kexinit: aes128-cbc,3des-cbc,blowfish-cbc,aes192-cbc,aes256-cbc
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-md5-96,hmac-sha1-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-md5-96,hmac-sha1-96
debug2: kex_parse_kexinit: none
debug2: kex_parse_kexinit: none
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: mac_setup: found hmac-md5
debug1: kex: server->client aes128-cbc hmac-md5 none
debug2: mac_setup: found hmac-md5
debug1: kex: client->server aes128-cbc hmac-md5 none
debug2: dh_gen_key: priv key bits set: 138/256
debug2: bits set: 1040/2048
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
debug1: Host '[localhost]:29418' is known and matches the RSA host key.
debug1: Found key in /home/gerrit2/.ssh/known_hosts:1
debug2: bits set: 1018/2048
debug1: ssh_rsa_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /home/gerrit2/.ssh/id_rsa (0x7f23f313aff0)
debug2: key: /home/gerrit2/.ssh/id_dsa ((nil))
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /home/gerrit2/.ssh/id_rsa
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey
debug1: Trying private key: /home/gerrit2/.ssh/id_dsa
debug2: we did not send a packet, disable method
debug1: No more authentication methods to try.
Permission denied (publickey).
采纳答案by Brad
Did you upload your ssh key into Gerrit through the web interface? Are you sure your username in Gerrit is 'admin'?
您是否通过 Web 界面将 ssh 密钥上传到 Gerrit 中?您确定您在 Gerrit 中的用户名是“admin”吗?
回答by Roger
The big gotcha, in my experience, is the ssh config file: ~/.ssh/config
根据我的经验,最大的问题是 ssh 配置文件:~/.ssh/config
This is where you tell SSH to align your user id with target URL and port.
这是您告诉 SSH 将您的用户 ID 与目标 URL 和端口对齐的地方。
Host gerrit.domain.com
User my_user_name
Port 29418
I only ever have to do this every few years, so always forget this last step after all the keys are setup and it still doesn't work.
我只需要每隔几年做一次,所以在设置所有键后总是忘记这最后一步,但它仍然不起作用。