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
提示 :密钥的保存路径,默认是/root/.ssh/id_rsa 直接回车以后的步骤也依次回车
然后会在/root/.ssh下生成如下文件 (.ssh默认是隐藏的)
(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 远程登录就不需要密码了
总结
以上所述是小编给大家介绍的ssh的三个组件ssh、sftp、scp ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://www.cnblogs.com/bbdong/archive/2018/10/09/9760791.html