Linux集群中ssh的配置方法

不论服务器节点,还是客户端节点,在配置ssh时都要两两互通。因此配置ssh时,对服务器节点和客户端节点的操作是一样的。

一般Linux中都默认安装了ssh,可以通过命令:which ssh 查看

下面开始配置:

1.在每个节点上,修改/etc/ssh/sshd_config文件:

   RSAAuthentication yes

   PubkeyAuthentication yes

   很多教程在这一步要求把PasswordAuthentication 同时设成 no ,我的建议是先不改,在后面节点之间互传公钥文件的时候还要用到密码访问的功能。

   改了的话在执行:scp ./id_dsa_本机器名.pub 目的机器名:/root/.ssh 这条命令时可能出现错误:Permission denied(publickey,gssapi-with-mic). lost connection.

   重启ssh后,对sshd_config文件做的修改才会生效(service sshd restart)。

 

2.生成密钥对。在每个节点上执行:ssh-keygen -d ,一路回车。

   这时可以在/root/.ssh 文件夹下查看生成的文件(我使用的是root账户配置ssh,操作时需要把root换成你用的账户名;以“.”开头的文件夹是默认隐藏的,图形界面看不到,要在命令行里面ls)

 

3.将本机器公钥文件加入authorized_keys文件:cat ./id_dsa.pub>>authorized_keys

 

4.修改authorized_keys文件权限:chmod 644 authorized_keys

 

5.验证单个机器无密钥是否成功:ssh 本机器名 (不应要求密码)

 

6.两台机器之间做ssh时,各自需要把自己/.ssh文件夹下的公钥文件id_dsa.pub发到对方/.ssh中。

   首先进行复制:cp ./id_dsa.pub ./id_dsa_本机器名.pub

   接下来发送给对方:scp ./id_dsa_本机器名.pub 对方机器名:/root/.ssh  此时ssh配置并没有完成,不可能无密码无密钥的向对方机器发送文件,因此前面提到的PasswordAuthentication发挥了作用,如果设置的是yes,此时按要求输入对方机器的密码,可以进行一次性的访问;设置的是no,可能连接请求将被拒绝。

 

7.每个节点上,将其他节点的公钥文件添加进authorized_keys文件:cat ./id_dsa_某节点名.pub>>authorized_keys

 

8.至此,配置完成。可通过此命令验证配置是否成功:“ ssh 某节点名  ”。使用“exit”可以退出该节点并回到自己机器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值