设置主机允许其他机器免密码远程复制文件到本机

场景:先由A和B两台机器,要使用scp命令,在shell中将A主机的文件复制到B主机,且这个shell脚本是crontab定时任务,自动定时执行,所以需要配置免密码从A复制文件到B。

1. A主机中输入命令:ssh-keygen -t rsa

在后面的等待输入全部直接回车,直到命令结束,如下:

[root@cosmoplat-cluster-1 bin]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): #这里直接回车,不要输入路径
Enter passphrase (empty for no passphrase): #这里直接回车,不要输入密码
Enter same passphrase again: #这里直接回车,不要输入密码
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:U/T/AOA2pok3tlfTQqtwz0dQQy2Zm0t1jf62bf8MpBY root@cosmoplat-cluster-1
The key's randomart image is:
+---[RSA 2048]----+
|          o  .+=.|
|         o o .=.=|
|          * =. =.|
|       . * o *=  |
|      . S . E.*o |
|       o * = B.oo|
|        . o = o.+|
|         . . . +o|
|               .*|
+----[SHA256]-----+

上面会生成一个id_rsa.pub文件到/root/.ssh路径下。这里面保存了一个密钥。

2. 复制文件/root/.ssh/id_rsa.pub 到B主机的/root/.ssh 路径

3.1 一定要注意:如果B主机下面有authorized_keys文件,则把id_rsa.pub中的内容复制并追加到B主机的authorized_keys文件中

3.2 如果B主机下没有文件,则vi直接创建一个authorized_keys文件,并把id_rsa.pub中的内容复制到authorized_keys文件中

4. 测试,从A主机直接scp命令复制文件到B主机,可以直接复制过去,如下:

[root@cosmoplat-cluster-1 .ssh]# scp -r /opt/apache-cassandra-2.1.9/bin/backup.sh root@10.133.0.65:/home
\S
Kernel \r on an \m
Warm tips :Authorized for Haier Utility's Uses only. All activity may be monitored and reported.
If you have any questions,please contact us.
Mailbox:dts.jxjg@haier.com
Phone:68066686 / 1000 / 8173
backup.sh                                                                                                                                                                                                            100% 2579     1.8MB/s   00:00    

总结:A主机生成一个证书密钥给B主机,B主机把这个证书密钥保存到自己的/root/.ssh/authorized_keys文件中,然后,从A主机复制文件到B主机就不再需要密码了。

注意:使用此方法需要两台计算机使用相同的账户名,这里都是用的root。

over.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要配置VScode SSH密码登录,可以按照以下步骤进行操作: 1. 在目标机器上打开终端,使用命令`sudo vi /etc/ssh/ssh_config`打开SSH配置文件。 2. 确保`PasswordAuthentication`参数设置为`yes`,这将允许使用密码进行身份验证。如果不是,请将其改为`yes`。 3. 保存并退出编辑器。 4. 重启SSH服务,可以使用命令`service sshd restart`来完成。 接下来,我们需要在VScode中配置SSH连接: 1. 在VScode中,安装`remote-ssh`插件和`remote-container`插件。这些插件将帮助我们进行SSH连接和远程开发环境的设置。 2. 安装完插件后,点击VScode左下角的“远程窗格”图标,然后点击右上角的“连接到远程主机”按钮。 3. 在弹出的选项框中,可以看到显示所有SSH连接的选项。点击该选项框,并配置一个SSH连接。你可以使用目标机器的IP地址、用户名和密码进行配置。注意,这里的用户名和密码是你在目标机器上的登录凭据。 4. 完成配置后,VScode将尝试连接到目标机器。如果一切顺利,你将能够在VScode中访问目标机器文件系统和终端。 为了实现密码登录,还需要将你的公钥文件(id_rsa.pub)放到目标机器上的`.ssh`文件夹中,并将其重命名为`authorized_keys`。具体操作步骤如下: 1. 首先,将你的公钥文件(id_rsa.pub)复制到目标机器上,可以使用命令`scp`或其他文件传输方法。 2. 在目标机器上打开终端,使用命令`cd ~`进入当前用户的目录。 3. 创建一个`.ssh`文件夹,并设置其权限为700,可以使用以下命令完成: ``` mkdir .ssh chmod 700 .ssh ``` 4. 将公钥文件移动到`.ssh`文件夹中,可以使用以下命令完成: ``` mv id_rsa.pub .ssh ``` 5. 进入`.ssh`文件夹,并将公钥内容追加到`authorized_keys`文件中,可以使用以下命令完成: ``` cd .ssh cat id_rsa.pub >> authorized_keys ``` 6. 最后,设置`authorized_keys`文件的权限为600,可以使用以下命令完成: ``` sudo chmod 600 authorized_keys ``` 完成以上步骤后,你应该能够在VScode中使用SSH连接进行密码登录。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值