Linux基础知识第六讲,远程管理ssh操作

Posted iBinary

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基础知识第六讲,远程管理ssh操作相关的知识,希望对你有一定的参考价值。

Linux基础知识第六讲,远程管理ssh操作

一丶什么是SSH

1.什么是SSH

在 Linux 中 SSH 是 非常常用 的工具,通过 SSH 客户端 我们可以连接到运行了 SSH 服务器 的远程机器上
SSH简单来说就是 一个客户端 一个服务器. 中间的传输协议是SSH. 进行数据加密和压缩传输.防止信息泄露.

2.了解域名跟端口

域名
  • 由一串 用点分隔 的名字组成,例如:www.baidu.com
  • IP 地址 的别名,方便用户记忆
端口号
  • IP 地址:通过 IP 地址 找到网络上的 计算机

  • 端口号:通过 端口号 可以找到 计算机上运行的应用程序

    • SSH 服务器 的默认端口号是 22,如果是默认端口号,在连接的时候,可以省略
  • 常见服务端口号列表:

序号 服务 端口号
01 SSH 服务器 22
02 Web 服务器 80
03 HTTPS 443
04 FTP 服务器 21

二丶SSH命令以及远程连接linux进行维护

1.ssh命令格式

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

提示:

  • 使用 exit 退出当前用户的登录
    ssh默认监听的端口默认就是22. 如果你的ssh端口改变,那个这个端口就要指定来了.
    例如:

ssh -p 23 远程计算机用户名:远程计算机的IP或者域名.
如果你是windows. 那么你就需要安装SSH软件 putty 或者 xshell来进行维护和管理
putty官方下载地址: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

xShell官方下载地址: https://xshell.en.softonic.com/

2.scp远程终端拷贝文件

我们学过终端命令, cp 进行拷贝文件. 那么scp就是远程拷贝文件

  • scp 就是 secure copy,是一个在 Linux 下用来进行 远程拷贝文件 的命令
  • 它的地址格式与 ssh 基本相同需要注意的是,在指定端口时用的是大写的 -P 而不是小写的

002_SCP示意图
命令演示:

# 把本地当前目录下的 01.py 文件 复制到 远程 家目录下的 Desktop/01.py
# 注意:`:` 后面的路径如果不是绝对路径,则以用户的家目录作为参照路径
scp -P port 01.py user@remote:Desktop/01.py  
列子:
scp 01.py root:xxx:Desktop/01.py 把01.py 拷贝到目的root计算机下的DeskTop下.

# 把远程 家目录下的 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
选项 含义
-r 若给出的源文件是目录文件,则 scp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
-P 若远程 SSH 服务器的端口不是 22,需要使用大写字母 -P 选项指定端口

注意:

  • scp 这个终端命令只能在 Linux 或者 UNIX 系统下使用
  • 如果在 Windows 系统中,可以安装 PuTTY,使用 pscp 命令行工具或者安装 FileZilla 使用 FTP 进行文件传输
    scp命令跟cp命令很相似. 只不过操作远程服务器,你需要指定远程服务器的用户名以及你要拷贝到目的的目录.
    在windows上使用FileZilla是FTP协议.所以我们填写的端口是21.

工具的使用与下载
链接: https://filezilla-project.org/

3.ssh高级用法

我们每次链接远程服务器的时候.都要进行输入远程远程服务器的密码.这样很麻烦.
我们可以建立一个 ssh私钥 跟公钥. 公钥放到远程服务器上.我们就可以进行免密码操作.
两条命令搞定.

  • 配置公钥
    • 执行 ssh-keygen 即可生成 SSH 钥匙,一路回车即可
  • 上传公钥到服务器
    • 执行 ssh-copy-id -p port user@remote,可以让远程服务器记住我们的公钥
      注意,我们生成的ssh钥匙是在.ssh目录下.也就是 home/.ssh 中.
      因为ssh目录前边有一个. 所以代表这个目录是隐藏的. 我们需要使用 ls -a来查看才可以.

4.ssh别名配置

我们使用ssh链接远程服务器的时候. 一般敲很多 命令
ssh -p xxx user@ip... 才能链接
现在我们能起别名了. 直接 ssh xx 就能链接
配置方法:
1.在你的客户端.ssh目录下创建一个config文件
2.在config配置你的信息
如下:

Host 别名名称
    HostName 远程服务器IP
    User 远程服务器用户名
    Port 远程服务器端口,ssh的.默认是22

如下:

如下,直接进行链接即可.

以上是关于Linux基础知识第六讲,远程管理ssh操作的主要内容,如果未能解决你的问题,请参考以下文章

Git应用详解第六讲:Git协作与Git pull常见问题

逆向知识第六讲,取摸优化的几种方式

AcWing 算法基础课 第六讲 贪心 总结

《从入门到精通云服务器》第六讲—OpenStack基础

第六讲 SQL

第六讲 缺陷管理工具