scp和ssh的基础操作
scp
作用: 主机和主机之间文件相互传输,每次都是全量的传输.基于SSH方式传输 默认使用的22端口
推送:
#将当前主机的1.txt 拷贝到 10.0.0.31的家目录下
scp 1.txt root@10.0.0.31:/root/
#拷贝多个文件
scp 1.txt 2.log root@10.0.0.31:/root/
拷贝目录:
scp -r oldboy root@10.0.0.31:/opt
使用域名:
scp hosts root@www.linuxnc.com:/tmp/
默认通过22端口删除,目标是2222 使用-P指定端口号
[root@web01 ~]# scp -P2222 /etc/hosts root@10.0.0.41:/root/
拉取
#将31服务器上的31.txt 下载到当前的位置
scp 10.0.0.31:/root/31.txt ./
#将31服务器上的data目录 下载到当前的位置
scp -r 10.0.0.31:/data /opt
ssh
基础连接方法
windows可以Linux
第一种连接方式: 直接连接手动输入用户名和密码
[c:\~]$ ssh 10.0.0.7
第二种连接方式: 指定用户名
[c:\~]$ ssh root@10.0.0.7
第三种连接方式: 指定端口
[c:\~]$ ssh 10.0.0.41 2222
基于用户名和密码的链接
Linux可以连接linux
[root@web01 ~]# ssh 10.0.0.31
指定用户连接
[root@web01 ~]# ssh root@10.0.0.31
指定端口连接
[root@web01 ~]# ssh -p2222 10.0.0.41
基于免秘钥的方式进行远程连接
免秘钥连接服务器
- 以web01免密登录nfs为例
1.web01生成秘钥对
[root@web01 ~]# ssh-keygen #列出的选项全部默认回车即可
2.查看密钥对
[root@web01 ~]# ll .ssh/
total 8
-rw------- 1 root root 2590 Dec 3 08:23 id_rsa
-rw-r--r-- 1 root root 564 Dec 3 08:23 id_rsa.pub
3.将公钥拷贝到10.0.0.31
[root@web01 ~]# ssh-copy-id 10.0.0.31 #需输入nfs密码
#公钥可以拷贝到多个服务器,实现多个服务器免密登录
4.实现免密钥连接
[root@web01 ~]# ssh 10.0.0.31
注意事项(目录和文件的权限)
所有目录的权限必须正确:
[root@nfs ~]# ll -d / # 根目录555
dr-xr-xr-x. 21 root root 276 Dec 5 10:30 /
[root@nfs ~]# ll -d /root # 家目录权限为550
dr-xr-x--- 4 root root 154 Dec 5 10:30 /root
[root@nfs ~]# ll -d .ssh # .ssh存放公钥和秘钥的目录 700
drwx------ 2 root root 48 Dec 5 10:45 .ssh
[root@nfs ~]# ll .ssh/ #存放公钥的文件必须为600
total 8
-rw------- 1 root root 1129 Dec 5 10:48 authorized_keys
私钥的权限: 600
[root@web01 ~]# ll .ssh/
total 12
-rw------- 1 root root 2590 Dec 5 10:42 id_rsa
-rw-r--r-- 1 root root 564 Dec 5 10:42 id_rsa.pub
xshell免密连接web01
- xshell生成秘钥对:xshell-->工具-->新建生成秘钥向导(注意秘钥名称;不必再设置密码)
- 将生成的公钥写入到web01服务器:
[root@web01 ~]# vim .ssh/authorized_keys
在xshell-->工具-->用户秘钥管理者中即可查看
#授权公钥文件权限为600
[root@web01 ~]# chmod 600 .ssh/authorized_keys
3.使用xshell连接web01,选择Public Key-->用户秘钥-->你刚刚生成的密钥,即可免密登录
注:可修改ssh配置文件禁止root用户密码登录
[root@web01 ~]# awk 'NR==66' /etc/ssh/sshd_config
PasswordAuthentication no
通过web01自动登录私网服务器
-
已知两台私网服务器IP为
- nfs:172.16.1.31
- backup:172.16.1.41
-
设置方法
- 在xshell-->会话-->右击web01会话-->属性-->登录脚本-->配置等待并发送规则
- 等待:]#
- 发送:ssh 172.16.1.31
使用ssh远程执行命令
[root@web01 ~]# ssh 10.0.0.31 'touch /root/1.txt'
本文来自博客园,作者:丁志岩,转载请注明原文链接:https://www.cnblogs.com/dezyan/p/18783830

浙公网安备 33010602011771号