Articles of ssh keys

Git:像密码过期一样过期ssh密钥?

我正在企业环境中build立git。 Git操作将主要通过SSH使用一个帐户与用于访问控制的SSH密钥。 (http将用于帐户configuration,基于web的代码浏览,但很less。 但是拥有永不过期的SSH密钥的想法对我来说是愚蠢的。 这只需要一个妥协的桌面泄露私钥,入侵者将永久访问我们的知识产权。 我做了很多Googlesearch,关于这方面的信息很less。 这让我感到惊讶,因为我不认为我走错了路。 虽然像GitLab和Stash这样的工具并不简单,但定期过期会很容易。 我们有一个用于将SSH公钥发送到服务器的“ git login ”包装脚本。 它可以确保旧密钥不仅被重新使用,还可以确保使用特殊密钥(如~/.ssh/config指定的),以便我们不会定期覆盖某人的~/.ssh/id_da*并停止他们的其他login。 (尽pipe在ssh config文件中指定的非默认位置使用密钥可能对我的一些lon-linux(Windows)用户有问题。) 有没有其他人做到这一点? 什么是行业最佳实践? 更新 好吧,看起来好像是这个答案的一部分:“这正是SSH密码短语的意思。” 所以剩下的问题就是这样 有没有办法强制使用和定期更改密码? 我假设人们会遵守,只是对他们而言很容易。

何时生成root的SSH密钥?

我在/root/.ssh中有主键和无主键。 我已经注意到,在启动(第一次)的SSH密钥生成屏幕反馈之前,但我不知道催化剂是什么。 我看过/root/anaconda-ks.cfg,没有看到任何不同的东西可能导致这一点。 什么是select/启用的服务器,而不是那些? 注:我知道我可以手动做 – 我只是想了解何时/如何不一致生成。

SSH:configurationssh_config以将特定的密钥文件用于特定的服务器指纹

我有一个基于密钥的服务器login。 服务器的IP和DNS可以更改,因为它托pipe在Amazon上。 有没有一种方法来configurationSSH客户端configuration使用特定的密钥文件只有当这台服务器的指纹匹配? 换句话说:在ssh客户端configuration中,正常服务器与IP或DNS相匹配。 我想通过指纹来做到这一点,因为IP和DNS可以改变。

不能强制ssh使用特定的密钥

我试图指定要使用的密钥,但由于某些原因,ssh仍使用不同的密钥,如下所示 $ cat ~/.ssh/config Host BitBucket HostName bitbucket.org IdentityFile ~/.ssh/id_rsa $ ssh -v [email protected] OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011 debug1: Reading configuration data /Users/gaurish/.ssh/config debug1: Reading configuration data /etc/ssh_config debug1: /etc/ssh_config line 20: Applying options for * debug1: Connecting to bitbucket.org [131.103.20.167] port 22. debug1: Connection established. debug1: identity file /Users/gaurish/.ssh/id_rsa type 1 debug1: […]

多less个SSH私钥设置为多个服务器?

一般过程是生成一对公钥和私钥,并将公钥上传到服务器进行SSH连接。 那么,如果我必须pipe理大量的服务器,我是否应该: 重用所有服务器的公钥? 要么 为每个服务器生成不同的密钥对。 我个人认为,从安全的angular度来看,第一select是足够好的。 我对么? 谢谢。

忘记我的(gnome)SSH代理中encryption的SSH密钥的密码。 我如何提取未encryption的版本?

好的,我有一个encryption的ssh私钥,可以访问服务器。 我的Ubuntu GNOME桌面有一个集成的graphicsssh代理(海马v3.2.2)。 这个ssh密钥在这个ssh代理中,当我login到我的桌面时它会自动解锁。 我可以ssh到服务器(使用这个encryption的ssh私钥)罚款,而不必input任何东西。 不过,我忘记了这个SSH密码的密码。 有无论如何提取(从SSH代理)未encryption的SSH密钥? 由于我可以用任何东西login服务器,我的电脑上的东西显然可以访问这个密钥的未encryption版本,所以我应该可以提取未encryption的版本,不是吗?

Ssh添加和联系服务器失败

我忘了如何做这个程序。 我在OSX 10.9.1上做过 在我的服务器上运行ssh-keygen 移动私钥id_rsa到我的笔记本电脑的$HOME/.ssh/id_rsa ,从我的服务器中删除私钥id_rsa 在我的笔记本电脑中创build以下$HOME/.ssh/config 运行ssh-add $HOME/.ssh/id_rsa 我的.ssh / config Host server.myhomepage.com User masi Port 22 Hostname server.myhomepage.com IdentityFile ~/.ssh/id_rsa TCPKeepAlive yes IdentitiesOnly yes 我跑 ssh-add .ssh/id_rsa Enter passphrase for .ssh/id_rsa: Identity added: .ssh/id_rsa (.ssh/id_rsa) 并运行更多 ssh server.myhomepage.com Saving password to keychain failed 它在我给出的graphics窗口中询问了我的密码id_rsa,但是得到了失败的信息。 然后,它在terminal询问我是否正确input了我的私钥的密码,但仍然显示失败的消息。 我用正确的密码运行了很多次 Identity added: /Users/masi/.ssh/id_rsa (/Users/masi/.ssh/id_rsa) [email protected]'s password: Permission […]

WordPress的无法findSSH公钥和私钥对

我的服务器configuration如下:CentOS 5.8(最终)运行Nginx。 我正在使用WordPress的插件安装程序的SSH2function。 我已经安装了lib2ssh ,它正在工作(WordPress的确认它存在)。 我提供给wordpress的用户(叫做playwithbits )是chroot的,主目录是/home/nginx/domains/playwithbits/ 公钥和私钥位于目录/home/nginx/domains/playwithbits/keys/ ,分别命名为id_rsa.pub和id_rsa 。 我已将id_rsa.pub的内容id_rsa.pub到位于/home/nginx/domains/playwithbits/.ssh/的id_rsa.pub文件 我没有为密钥文件设置密码。 不过,WordPress的不断返回错误: 公共密钥和私钥对playwithbits不正确 我已经向Wordpress提供了以下信息 Hostname: localhost Username: playwithbits Password: Blank Public key: /keys/id_rsa.pub //I have also tried the paths from server root Private key: /keys/id_rsa 以下是我在相关文件夹和文件上设置的权限: drwx—— 2 playwithbits playwithbits 4096 Jun 8 11:25 .ssh drwx—— 2 playwithbits playwithbits 4096 Jun 8 13:27 keys […]

阻止无密码的ssh密钥

是否有一个sshdconfiguration命令来阻止其中有空白或空密码的密钥? 我想限制ssh访问密码的人没有密码存储在服务器上。

基于SSH密钥的身份validation最佳实践

我们正在考虑改变的一个安全stream程是我们允许用户访问我们的服务器的方式。 我们有大约20台Web服务器,其中唯一的访问是SSH,而目前我们使用密码authentication。 使用基于密钥的身份validation更安全,我必须考虑如何最好地pipe理这个过程。 如果我们有8个使用不同机器的远程用户,我们如何控制密钥authentication,因为每台机器都需要密钥到服务器。 pipe理是在客户端还是服务器端完成的? 当用户更换笔记本电脑或尝试从不同的机器/位置远程login时会发生什么? 除了这个,我们正在看: 更改SSH端口我们已经禁止了root用户使用PAM白名单IP来访问google-authenticator服务器? 安全的服务器跳转SSH服务器? 还有什么错过了?