评论

收藏

[Java] 深入浅析SSH的三个组件ssh、sftp、scp

编程语言 编程语言 发布于:2021-10-08 13:18 | 阅读数:364 | 评论:0

SSH 包含3个组件,文中给大家详细提到。这篇文章主要介绍了SSH的三个组件ssh、sftp、scp ,需要的朋友可以参考下
ssh  包含3个组件
(1) ssh 远程登录节点 : ssh 用户名@ip地址
① 不允许空密码或错误密码认证登录
② 不允许root用户登录
③ 有两个版本 ssh,ssh2安全性更高
(2) sftp 文件共享连接 , xftp连接就是 sftp实现的
(3)scp  文件拷贝共享
scp命令 :两节点文件的拷贝传输
(1)向目标节点传文件 : scp  路径/文件名 用户名@ip地址:目录
如:向127.0.0.1节点的root用户/tmp 下传文件
scp 路径/文件名 root@127.0.0.1:/tmp
(2)从目标节点拉文件 : scp  用户名@ip地址:路径/文件名  文件目录
注意 :在远程拷贝至目标节点时 ,就等于创建了 一个一模一样的文件 ,此时原文件的文件属性已发生了变化(如文件创建的时间)   如果不期望文件属性发生变化
scp -p  -r   xxx
-p  : 文件属性不发生变化  (建议加上)
-r  : 如果拷贝的是目录 需要加-r  ,递归
-p(大写) :  指定端口号,如果端口号在ssh 中发生了变化
在使用scp拷贝文件时需要手动输入密码才能拷贝成功到远程节点,如果实现定时拷贝或者免密码登录需要创建秘钥免密码认证 步骤   如下:
例:a 172.30.3.165 节点从b 172.30.3.126节点拉文件   :  spc  root@172.30.3.126:/tmp/文件名字  /tmp/文件名字
(1)a节点生成秘钥对 :ssh -keygen -t rsa
DSC0000.jpg

提示 :密钥的保存路径,默认是/root/.ssh/id_rsa  直接回车以后的步骤也依次回车
DSC0001.jpg

然后会在/root/.ssh下生成如下文件  (.ssh默认是隐藏的)
DSC0002.jpg

(2)将id_rsa.pub 公钥拷贝到主机 b  /root/ 目录下
scp id_rsa.pub root@172.30.3.126:/root/
(3)查看b节点下是否有.ssh目录,如果没有则创建
(4) 将id_rsa.pub输出到.ssh目录下 ,创建新的认证文件
authorized_keys  cat id_rsa.pub >> .ssh/authorized_keys
(5) 到/root/下分别 对文件赋予权限
a、 chmod 700 .ssh
b、chmod 600 .ssh/authorized_keys
(6)测试 :ssh root@172.30.3.126   远程登录就不需要密码了
DSC0003.jpg

总结
以上所述是小编给大家介绍的ssh的三个组件ssh、sftp、scp ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对CodeAE代码之家网站的支持!
原文链接:https://www.cnblogs.com/bbdong/archive/2018/10/09/9760791.html
关注下面的标签,发现更多相似文章