我正在尝试克隆我在GitHub Repository中分叉的git repo.它是一个rails应用程序.我想在我的本地git上克隆它,以便我可以将它推送到heroku.我生成了一组rsa密钥并将其复制到我的GitHUb公钥上.当我尝试时git clone "public url",它说公钥被拒绝了.我试过ssh git@github.com验证我的密钥,它也说公钥被拒绝了.我已经尝试了几种不同的东西来使它工作,但它仍然没有.我试图在我的.ssh文件夹上将权限更改为600和700.我也尝试添加一个dsa密钥,因为rsa不起作用.请帮我.谢谢.:)
我正在使用Vista btw.
我现在每天坚持2天.
我有一台带有Gitlab4和gitolite的CentOs机器.一切都运行良好数周,但突然上周末发生了一些奇怪的事情,所有的二进制文件都从mashine中消失了(比如yum,python,ruby,mysql等).我真的不知道它是如何让人高兴的......经过几个小时的重新安装和编译gitlab再次工作.
但是我无法获得gitlab和git用户之间的ssh密钥.我已经删除并重新创建了git用户,再次设置了所有权限,重新创建了ssh密钥,重新安装了gitolite等.但没有任何效果我继续得到同样的错误.
git user .ssh文件夹
-rwx------ 1 git git 557 Mar 27 16:46 authorized_keys
Run Code Online (Sandbox Code Playgroud)
gitlab用户.ssh文件夹
-rw------- 1 gitlab gitlab 1671 Mar 27 16:45 id_rsa
-rw-r--r-- 1 gitlab gitlab 406 Mar 27 16:45 id_rsa.pub
-rw-r--r-- 1 gitlab gitlab 391 Mar 27 16:50 known_hosts
Run Code Online (Sandbox Code Playgroud)
SSH错误:
ssh -vvvT git@localhost
OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to localhost [127.0.0.1] …Run Code Online (Sandbox Code Playgroud) 我想使用SSH密钥而不是用户名和密码连接到我的存储库.
但是当我尝试在TortoiseGit中执行此操作时,我无法输入密钥,因为"Load Putty Key"已禁用.任何人都可以指出为什么会发生这种情况以及如何启用该领域?
我成功地继续我的亚马逊ec2,我一直在试验.我觉得很烦人,我需要总是在所有内容上运行sudo,所以我决定要去路由目录并更改所有内容的写入,写入和执行权限.
我这样做了以下
chmod -R 777 .
Run Code Online (Sandbox Code Playgroud)
然后我退出了服务器.
下次我尝试登录时,我得到了
"ssh_exchange_identification: read: Connection reset by peer"
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?
谢谢
在我们的管理团队中,每个人都拥有所有客户端服 但是,如果其中一名团队成员不再与我们合作,我们该怎么办?他仍然拥有我们的密码,每次有人离开我们时我们都必须更改密码.
现在我们使用ssh密钥而不是密码,但是如果我们必须使用ssh以外的东西,这没有用.
我一直在努力让Ansible配置远程机器,我希望远程机器能够设置自己的密钥,并且能够从Bitbucket克隆git存储库.
用户已设置,有自己的id_rsa.pub,并且密钥已在bitbucket中注册.
但是,当我使用Ansible Git模块时,看起来模块总是试图使用运行playbook的机器上的键.
如何让git模块使用远程机器上的id_rsa.pub?
相关的任务是这样的:
- name: be sure prom-king has an up-to-date clone of its own repository
git:
repo: "ssh://ddcrnd@bitbucket.org/prom-king.git"
dest: /home/promking/prom-king
accept_hostkey: yes
clone: yes
key_file: /home/promking/.ssh/id_rsa.pub
update: yes
Run Code Online (Sandbox Code Playgroud)
相关的库存就是这个
# inventory file for use with the vagrant box in the testing directory.
[prom-king]
192.168.168.192 ansible_ssh_host=127.0.0.1 ansible_sudo=true ansible_connection=ssh ansible_ssh_port=2222 ansible_ssh_user=vagrant ansible_ssh_private_key_file=testing/.vagrant/machines/default/virtualbox/private_key
Run Code Online (Sandbox Code Playgroud) 我想在Gitlab网站上使用2个帐户,每个帐户使用不同的ssh密钥
我成功生成了密钥并将它们添加到~/.ssh 我创建~/.ssh/config文件的文件夹中并使用其中一个,它的工作正常我也可以通过编辑~/.ssh/config文件在两个密钥之间进行交换
问题是:我想在同一时间使用它们,但我找到的所有教程都采用了不同的主机:/
实际上我的两个帐户都在同一个主机上
如何编辑~/.ssh/config文件以接受同一主机的两个帐户
注意: 我读过这个问题,但我无法从中获得帮助
我的两个帐户是username1和username2
repo URL看起来像:git@gitlab.com:username1/test-project.git
我目前的~/.ssh/config档案:
Host gitlab.com-username1
HostName gitlab.com
User git
IdentityFile ~/.ssh/id_rsa
Host gitlab.com-username2
HostName gitlab.com
User git
IdentityFile ~/.ssh/id_rsa_username2
Run Code Online (Sandbox Code Playgroud)
更新1:
1)当我在~/.ssh/config文件中使用一个键时,一切都很完美(但每次我想要更改我使用的用户时更新它都很无聊)
2)当我使用这条线时,
ssh -T git@gitlab.com-username1
ssh -T git@gitlab.com-username2
它的效果很好,并返回一条欢迎信息
从1)和2),我认为问题肯定来自~/.ssh/config文件,特别是Host变量
更新2:(求解)
求解是编辑.git/config从文件
[remote "origin"]
url = git@gitlab.com:username1/test-project.git
到
[remote "origin"]
url = git@gitlab.com-username1:username1/test-project.git
并为此做同样的事情 username2
ssh-copy-id命令到底是做什么的?我已经多次使用它并且效果很好.但是,当我尝试手动剪切并粘贴我的.pub密钥文件到我的远程authorized_keys时,它不起作用.
我已经比较了我已经剪切并粘贴.pub的authorized_keys文件的内容,后来使用了ssh-copy-id,我没有看到两者之间有任何差异,包括空格.
除了将公钥复制到authorized_keys之外,ssh-copy-id有什么作用吗?
我格式化了我的Windows 7笔记本电脑,并试图让git设置再次运行,我安装了git和源代码树应用程序.
我从gitlab中删除了SSH密钥,并使用ssh-keygen重新生成密钥.但是当我尝试在gitlab上添加SSH密钥时,它会引发以下异常:
Key is invalid
Fingerprint has already been taken
Fingerprint cannot be generated
Run Code Online (Sandbox Code Playgroud)
因为我无法从源代码树应用程序克隆git存储库,因为它无法对SSH密钥进行身份验证.我在gitlab的google组中进行了查询,但它们似乎都没有解决我的问题.是否有任何解决方法或步骤来获取gitlab接受的SSH密钥?
在通过dockerfile构建docker镜像时,我必须克隆一个github repo.我已将我的公共ssh密钥添加到我的git hub帐户,我可以从我的docker主机克隆repo.虽然我看到我可以通过$SSH_AUTH_SOCK在docker运行时映射env变量来使用docker host的ssh键docker run --rm -it --name container_name \
-v $(dirname $SSH_AUTH_SOCK):$(dirname $SSH_AUTH_SOCK) \
-e SSH_AUTH_SOCK=$SSH_AUTH_SOCK my_image.
在docker build中我怎么能这样做?
ssh-keys ×10
git ×5
ssh ×5
gitlab ×3
amazon-ec2 ×1
ansible ×1
docker ×1
docker-image ×1
dockerfile ×1
github ×1
gitolite ×1
heroku ×1
linux ×1
passwords ×1
permissions ×1
putty ×1
security ×1
tortoisegit ×1