SSH无密码执行远程服务器上的命令或密码

本文详细介绍如何在两台CentOS服务器之间配置SSH无密码登录,包括生成密钥对、公钥分发及授权文件设置等步骤,并提供验证方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SSH无密码执行远程服务器上的命令或密码这个功能,在牵涉到多台服务器的时候非常有用,如果一个任务牵涉到多台服务器的配合等方面的事情,用这个命令就方便多了,

环境:

Centos 6.5 64bit


假定有两台服务器A,B

在A上以root登录,

ssh-keygen -t rsa


scp ~/.ssh/id_rsa.pub  root@192.168.0.48:/root/


在B上以root登录

检查是否有~/.ssh/authorized_keys这个文件存在,如果不存在,则创建~/.ssh/

cd ~/.ssh

-bash: cd: /root/.ssh: 没有那个文件或目录

cd ~/

mkdir .ssh/

对这个文件夹赋权限 700

chmod 700 ~/.ssh/

cd .ssh/

touch authorized_keys

对anthorized_keys文件赋权限

chmod 600 authorized_keys

将之前A上copy过来的公匙文件的内容复制到anthorized_keys中

cat /root/id_rsa.pub  >> /root/.ssh/authorized_keys

重启ssh服务

/etc/init.d/sshd restart

------------------------------至此整个流程完成-------------------------------------

可以采用如下方式验证:

在B服务器上新建测试脚本vi /home/sys_monitor/test.sh



#! /bin/bash




echo "0.49"


保存后赋执行权限

cd /home/sys_monitor/

chmod a+x test.sh


在A上以root执行命令ssh root@192.168.0.49 '/home/sys_monitor/test.sh'

0.49

证明执行成功



============================


错误:The authenticity of host 192.168.0.xxx can't be established.

执行 ssh  -o StrictHostKeyChecking=no  192.168.0.xxx


-----------------------------------------------------

ssh-keygen -t rsa

ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.xx.xx


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值