SSH远程登录以及远程拷贝 - Linux

1. ssh客户端简单使用


ssh [-p port] user@remote
  • user : 远程机器上的用户名, 如果不指定的话默认为当前用户
  • remote : 远程机器的地址, 可以是IP/域名
  • port : SSH Server监听的端口, 如果不指定, 就为默认值22

提示:

  • 使用exit退出当前用户的登录
  • 如果在Windows系统中, 可以安装PuTTY或者XShell客户端软件即可

提示:

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

2. scp 远程拷贝命令使用


scp : secure copy, 一个在Linux下用来进行远程拷贝文件的命令

# 把本地当前目录下的文件 复制到远程 用户目录下的Desktop
# 注意: `:` 后面的路径如果不是绝对路径, 则以用户的home目录作为参照路径
scp -P port fileName user@remote:Desktop
 
# 把远程 home目录下的 Desktop/file 文件 复制到 本地当前目录下的 file
scp -P port user@remote:Desktop/file file

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

# 把远程 home目录下的Desktop 复制到当前目录下的 demo 文件夹
scp -r user@remote:Desktop demo
选项 含义
-r 若给出的源文件是目录文件, 则scp将递归复制该目录下的所有子目录和文件, 目标文件必须为一个目录名
-P 若远程SSH服务器的端口不是22, 需要使用大写字母-P选项指定端口

example:

$ scp -P 8088 -r [email protected]:data demo

解释:
-P : 指定端口
8088 : 端口号
-r : 复制的为文件夹
clearlight : user
217.32.211.58:data : remote地址:当前用户目录下的data文件夹
demo : 复制到当前目录下的demo文件夹中

3. SSH高级教程


  • 免密码登录
  • 配置别名

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

3.1 免密码登录

步骤:

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

3.2 配置别名

步骤:

  1. .ssh文件夹中新建config文件, 然后写入下面内容

    Host 别名

    ​ HostName ip地址/域名

    ​ User 用户名

    ​ Port 22

  2. 此时, 就可用ssh 别名实现远程登录, scp同样可以使用.

    lixiaoyi@T470p:~$ cd .ssh
    lixiaoyi@T470p:~/.ssh$ ls
    id_rsa  id_rsa.pub  known_hosts
    lixiaoyi@T470p:~/.ssh$ touch config
    lixiaoyi@T470p:~/.ssh$ vim config
    lixiaoyi@T470p:~/.ssh$ cat config
    Host clearlight
        HostName www.clearlight.top
        User clearlight
        port 22
    lixiaoyi@T470p:~/.ssh$ ssh clearlight
    Last login: Sun Jan 12 13:10:07 2020 from 106.8.66.188
    
    Welcome to Alibaba Cloud Elastic Compute Service !
    
    [clearlight@iz2ze7n4ftkcqan59957w2z ~]$
    
发布了190 篇原创文章 · 获赞 153 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/qq_36852780/article/details/103950045