Linux教程(四)远程管理

在 Linux 中 ssh 是非常常用的工具,通过 SSH 客户端可以连接到运行了 SSH 服务器的远程机器上。ssh 是目前较为可靠的、专为远程登录会话和其他网络服务提供安全性的协议。

优点:

  • 利用 ssh 协议可以有效防止远程管理过程中的信息泄露

  • 通过 ssh 协议可以对所有传输的数据进行加密,也能够防止 DNS 欺骗和 IP 欺骗

  • SSH 的另一个优点是传输的数据可以进行枷锁,所以加快了传输的速度

5.1 域名和端口号

5.1.1 域名

有一串用 . 分隔的名字组成,如:www.baidu.com,是 ip 地址的别名,方便用户记忆

5.1.2 端口号

ip地址:通过 ip 地址找到网络上的计算机

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

SSH 服务器的额默认端口号是 22,如果是默认端口号,在连接的时候可以省略

常见服务端口号列表:

服务 端口号
SSH 服务器 22
Web 服务器 80
HTTPS 443
FTP 服务器 21

5.2 SSH 客户端简单使用

5.2.1 远程登录

格式:ssh [-p port] user@remote

  • user:远程机器上的用户名,不指定的话默认为当前用户

  • remtoe:远程机器的地址,可以是 ip 、域名或者别名

  • port:ssh server 监听的端口,不指定默认为 22

使用 exit 可推出当前用户的登录状态

ssh 终端命令只能在 linux 或 unix 系统下使用,windows 中可以安装 PuTTY 或者 XShell 客户端软件

5.2.2 关机重启 shutdown

格式:shutdown 选项 时间

选项:

  • -r:重新启动

不指定选项和参数,默认1分钟之后关闭电脑

远程维护服务器时,最好不要关闭系统,而应该重启系统

# 重新启动系统,now 表示现在 
shutdown -r now 

# 立即关机 
shutdown now 

# 在指定时间关机 
shutdown 20:30 

# 过十分钟自动关机 
shutdown +10 

# 取消之前的关机计划 
shutdown -c

5.2.3 查看或配置网卡信息

1.ifconfig

作用:查看/配置计算机当前的网卡配置信息

格式:ifconfig

# 查看网卡配置信息 
ifconfig 

# 查看网卡对应的 IP 地址 
ifconfig | grep inet

一台计算器中可能有一个物理网卡和多个虚拟网络,在 Linux 中物理网卡的名字通常以 ensXX 表示

127.0.0.1 被称为 本地回环/环回地址,一般用来测试本机网卡是否正常

2.ping

作用:ping 一般用于检测当前计算机到目标计算机之间的网络是否通畅,数值越大,速度越慢

格式:ping IP地址/域名

#检测目标主机是否连接正常 
ping IP地址 

# 检测本地网卡是否正常工作 
ping 127.0.0.1

5.3 复制文件 scp

作用:scp 是一个在 linux 下用来进行远程拷贝文件的命令,格式与 ssh 基本相同

格式:scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径

选项:

  • -r:若源文件是目录文件,则递归复制该目录下所有的子目录和文件,且目标文件必须为一个目录名

  • -P:若远程 SSH 服务器的端口不是 22,则需要使用大写字母 -P 选项指定端口

# 把本地当前目录下的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 在指定端口时要使用大写 -P

5.4 SSH 高级

ssh 的配置信息都保存在用户家目录的 .ssh 目录下

4.4.1 免密码登录

1.配置公钥:执行 ssh-keygen 生成 SSH 秘钥对

2.执行 ssh-copy-id -p port user@remote:让远程服务器记住公钥

5.4.2 配置别名

远程连接 SSH 时每次都需要输入 ssh -p port user@remote 非常麻烦,设置时别名可以更方便的输入命令

别名在 ~/.ssh/config 中进行配置

Host mac 
    HostName remote   
    User user     
    Port port 
# 设置别名为 mac,上面这一段即可使用 mac 来代替 -p port user@remote,保存后就可以使用 ssh mac 来实现远程登录了,scp 也可以使用别名
posted @ 2020-10-06 09:32  芒果日记  阅读(282)  评论(0编辑  收藏  举报