美文网首页红帽运维
ssh和scp的简单使用

ssh和scp的简单使用

作者: 胖虎很可爱 | 来源:发表于2018-02-26 12:55 被阅读0次
image

SSH 客户端的简单使用:

使用ssh客户端远程登录到指定的计算机

$ ssh [-p port] user@remote

  • user 是在远程机器上的用户名,如果不指定的话默认为当前用户
  • remote 是远程机器的地址,可以是 IP域名,或者是 后面会提到的别名
  • portSSH Server 监听的端口,SSH 服务器的默认端口号是 22,不指定则使用默认端口号

提示:

  • 使用 exit 退出当前用户的登录
  • 在工作中,SSH 服务器的端口号很有可能不是 22,如果遇到这种情况就需要使用 -p 选项,指定正确的端口号,否则无法正常连接到服务器

scp(掌握)

  • scp 就是 secure copy,是一个在 Linux 下用来进行 远程拷贝文件 的命令
  • 既可以将本地内容拷贝到远程计算机,也可以将远程计算机内容拷贝到本地
命令 对应英文 作用
scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 secure copy 远程复制文件
选项 含义
-r 若给出的源文件是目录文件,则 scp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
-P 若远程 SSH 服务器的端口不是 22,需要使用大写字母 -P 选项指定端口
  • 它的地址格式与 ssh 基本相同需要注意的是,在指定端口时用的是大写的 -P 而不是小写的
  • IP地址的**:** 后面的路径如果不是绝对路径,则以用户的家目录作为参照路径
# 把本地当前目录下的 01.py 文件 复制到 远程 家目录下的 Desktop/01.py
scp -P port 01.py user@remote:Desktop/01.py

# 把远程 家目录下的 Desktop/01.py 文件 复制到 本地当前目录下的 01.py
scp -P port user@remote:Desktop/01.py 01.py

# 加上 -r 选项可以传送文件夹
# 把当前目录下的 demo 文件夹 复制到 远程 家目录下的 Desktop
scp -r demo user@remote:Desktop

# 把远程 家目录下的 Desktop 复制到 当前目录下的 demo 文件夹
scp -r user@remote:Desktop demo

注意:

  • scp 这个终端命令只能在 Linux 或者 UNIX 系统下使用
  • 如果在 Windows 系统中,可以安装 PuTTY,使用 pscp 命令行工具或者安装 FileZilla 使用 FTP 进行文件传输

SSH 高级:

  • 免密码登录
  • 配置别名

提示:有关 SSH 配置信息都保存在用户家目录下的 .ssh 目录下

1)免密码登录

步骤
  • 配置公钥
    • 执行 ssh-keygen 即可生成 SSH 钥匙,一路回车即可
  • 上传公钥到服务器
    • 执行 ssh-copy-id -p port user@remote,可以让远程服务器记住我们的公钥
示意图

非对称加密算法

  • 使用 公钥 加密的数据,需要使用 私钥 解密
  • 使用 私钥 加密的数据,需要使用 公钥 解密

2) 配置别名

每次都输入 ssh -p port user@remote,时间久了会觉得很麻烦,特别是当 user, remoteport 都得输入,而且还不好记忆

配置别名 可以让我们进一步偷懒,譬如用:ssh ubuntu 来替代上面这么一长串,那么就在本地计算机~/.ssh/config 里面追加以下内容:

Host ubuntu
    HostName 服务器ip地址
    User python
    Port 22

保存之后,即可用 ssh ubuntu实现远程登录了,scp 同样可以使用

相关文章

网友评论

    本文标题:ssh和scp的简单使用

    本文链接:https://www.haomeiwen.com/subject/tgfyxftx.html