SCP和SFTP不用输入密码的信任公钥方法攻略

2025-10-30 23:54:39

1、sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的一部份,是一种传输档案至 Blogger 伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP(Secure File TransferProtocol)的安全文件传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。

1、进入系统家目录

 

首先需要在家目录创建.ssh文件夹

# ll –a     查看隐藏目录,默认此目录里如果没有.ssh隐藏目录,则需要手动创建

# mkdir .ssh 新建.ssh文件夹

SCP和SFTP不用输入密码的信任公钥方法攻略

2、#cd .ssh             进入.ssh目录

#ssh-keygen -t rsa   执行创建密钥对命令

Generating public/private rsa key pair.

Please be patient....   Key generation may take a few minutes

Enter file in which to save the key (/home/ap/appnms/.ssh/id_rsa):

# 按回车保存为: //.ssh/id_rsa,即当前用户的私钥

Enter passphrase (empty for no passphrase):

# 按回车,表示读取密钥时不需要密钥的密码

Enter same passphrase again:

# 确认密钥的密码,必须和上面的输入相同

Your identification has been saved in /home/ap/appnms/.ssh/id_rsa.

# 私钥保存信息

Your public key has been saved in /home/ap/appnms/.ssh/id_rsa.pub.

# 公钥保存信息

The key fingerprint is:

31:03:78:64:4f:8e:9d:a9:31:bf:38:5d:1a:79:08:e6 appnms@T254N0V4

# 密钥指纹

The key's randomart image is:

+--[ RSA 2048]----+

|     o+ .        |

|    ...B o       |

|     .* X        |

|     o * *       |

|      E S o      |

|       o *       |

|      o +        |

|       .         |

|                 |

+-----------------+

SCP和SFTP不用输入密码的信任公钥方法攻略

3、把.ssh目录下的公钥文件:/当前用户home目录/.ssh/id_rsa.pub文件传输到服务器上。

#scp/home/ap/appnms/.ssh/id_rsa.pub appmon@128.192.141.129:/ultranms/appmon/.ssh

此时仍需要输入密码,革命即将成功:)

SCP和SFTP不用输入密码的信任公钥方法攻略

1、登录服务器查看用户家目录:

#cat /etc/passwd | grep appmon

appmon:tAceUEMuTYB9Q:116:20::/ultranms/appmon:/sbin/sh

通过检查home目录为/ultranms/appmon  家目录的权限必须是755

SCP和SFTP不用输入密码的信任公钥方法攻略

2、# cd /.ssh                      进入到.ssh目录  .ssh目录权限必须是755或者700

# cp id_rsa.pub authorized_keys 第一次添加时将公钥重命名为authorized_keys

# chmod 644 authorized_keys     公钥文件的权限必须是644

如果有多个客户端,依次将客户端公钥附加到服务器的authorized_keys文件内即可。

# cat /tmp/id_rsa.pub >> authorized_keys

SCP和SFTP不用输入密码的信任公钥方法攻略

1、使用sftp访问测试是否配置成功,成功的现象是访问不需要输入密码-_—

#sftp appmon@128.192.141.129  

如果不需要输入密码则公钥设置成功

只有第一次连接需要输入YES确认:

The authenticity of host '128.192.141.129 (128.192.141.129)' can't be established.

RSA key fingerprint is 91:b8:8e:85:8a:33:da:6e:04:a0:96:4d:9a:bb:57:67.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added '128.192.141.129' (RSA) to the list of known hosts.

Connected to 128.192.141.129.。

SFTP测试成功了,下面测试一下文件传输

2、# scp /需要上传源文件的绝对路径 目的用户名@IP地址:目的目录

示例:#

scp /home/ap/appnms/.ssh/id_rsa.pub appmon@128.192.141.129:/ultranms/appmon/.ssh

id_rsa.pub                          100%  397   0.4KB/s   0.4KB/s   00:00

大功告成!

SCP和SFTP不用输入密码的信任公钥方法攻略

1、写个简单的脚本示例:

test.sh

#/bin/sh

scp /home/ap/appnms/.ssh/id_rsa.pub appmon@128.192.141.129:/ultranms/appmon/.ssh

2、#crontab –e  /注:客户端根据实际情况修改crontab自动调用脚本。

 

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢