欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

centos(6) ssh 自动登录配置

程序员文章站 2022-05-15 09:29:17
...

本文是在 centos(4) iptables 构建局域网环境 的基础上, 对于局域网内的多台机器进行ssh 自动登录的配置。 网络上已经有很多的关于ssh的配置的文件, 本文也是采用相同的方法,主要是对遇到的一些问题,进行的分析与整理, 希望对自己和他人 有用。 首先在j

本文是在centos(4) iptables 构建局域网环境的基础上, 对于局域网内的多台机器进行ssh 自动登录的配置。

网络上已经有很多的关于ssh的配置的文件, 本文也是采用相同的方法,主要是对遇到的一些问题,进行的分析与整理, 希望对自己和他人 有用。

首先在johnny-test-3的机器上用, ssh-keygen来生成 公钥与私钥。

centos(6) ssh 自动登录配置

然后采用ssh-copy-id 将文件拷贝到其他的机器上:

centos(6) ssh 自动登录配置

再做一步设定是将/etc/ssh/ssh_config文件, 拷贝到~/.ssh/目录下, 命名为config, 如果你采用默认的id_dsa, 那就不用这一步了。

centos(6) ssh 自动登录配置

然后就可以直接ssh到johnny-test-2机器上

centos(6) ssh 自动登录配置

我们来比较一下johnny-test-2机器上的authorized_keys与test3_dsa.pub的内容,会发现其实是一样的

centos(6) ssh 自动登录配置

所以 ssh-copy-id其实是做了两件事, 首先是scp本地的*.pub文件到目标机器上, 然后再用cat *.pub >>authorized_key

现在局域网内有3台机器, 为了允许任意两台都可以自动的登录, 只要 在一台上设定好了到其他所有机器的authorized_key文件, 再把这个文件直接拷贝到其他的所有的机器就可以了。

笔者又遇到了很奇怪的问题, johnny-test-1可以连到其他的机器, 其他的机器之间也是可以相互自动登录的, 但是他们没有办法 自动登录到johnny-test-1.

这时要看ssh的log了, 用root 的权限来查看 /var/log/secure, 会发现 如下的错误

centos(6) ssh 自动登录配置

再比较一下johnny-test-1 ~/.ssh与其他机器的~/.ssh的目录的权限如下:会发现 johnny-test-1的.ssh的目录权限太多了,

johnny-test-1
centos(6) ssh 自动登录配置

其他的机器

centos(6) ssh 自动登录配置

采用如下的命令:

再从其他的机器 就可以正常的自动的ssh到johnny-test-1

centos(6) ssh 自动登录配置

至此问题解决