04、关机、网卡、远程管理.xmind


域名和端口号

服务 端口号
FTP 服务器 21
SHH 服务器 22
Web 服务器 80
HTTPS 443
mysql 3306
编辑用户目录下的 .my.cnf 文件进行修改
oracle 1521
sqlserver 1433
PostgreSQL 5432
DB2 5000
redis 6379
MongoDB 27017

查看端口

lsof -i:端口号

用以显示符合条件的进程情况,lsof(list open files)是一个列出当前系统打开文件的工具,以root用户来执行lsof -i命令,如下图
屏幕快照 2020-06-05 下午10.07.23.pngCOMMAND 进程的名称或者进程开启的方式
PID 进程id
USER 进程所有者
FD 文件描述符
TYPE 协议类型
DEVICE 端口号
SIZE/OFF 偏移
NODE 协议名
NAME 节点名

lsof -i:端口号 用于查看某一端口的占用情况,比如查看22号端口使用情况,lsof -i:22,如下图
屏幕快照 2020-06-05 下午10.14.34.png

  1. # 杀死端口
  2. kill -9 $(lsof -i:7001 -t)

netstat -tunlp

netstat -tunlp | grep 端口号 用于显示tcp,udp的端口和进程等相关情况,如下图
-t 仅显示和tcp相关的 -u 仅显示和udp相关的-u 仅显示和udp相关的 -n 不限时别名,能显示数字的全部转换为数字-n 不限时别名,能显示数字的全部转换为数字 -l 仅显示出于Listen(监听)状态的-l 仅显示出于Listen(监听)状态的 -p 显示建立这些连接的程序名-p 显示建立这些连接的程序名

image.png

关机/重启

  1. shutdown
  2. shutdown 命令可以安全关闭或者重新启动系统
  3. 不指定选项和参数,默认表示 1 分钟之后 关闭电脑
  4. 远程维护服务器时,最好不要关闭系统,而应该重新启动系统
  5. # 重新启动操作系统,其中 now 表示现在
  6. $ shutdown -r now
  7. # 立刻关机,其中 now 表示现在
  8. $ shutdown now
  9. # 系统在今天的 20:25 会关机
  10. $ shutdown 20:25
  11. # 系统再过十分钟后自动关机
  12. $ shutdown +10
  13. # 取消之前指定的关机计划
  14. $ shutdown -c
  15. 选项 含义
  16. -r 重新启动

查看或配置网卡信息

ifconfig

查看/配置计算机当前的网卡配置信息, configure a network interface

  1. # 查看网卡配置信息
  2. $ ifconfig
  3. # 查看网卡对应的 IP 地址
  4. $ ifconfig | grep inet
  5. #关闭网卡
  6. $ sudo ifconfig 【网卡代号】 down
  7. #打开网卡
  8. $ sudo ifconfig 【网卡代号】 up

ping

检测到目标 ip地址 的连接是否正常

  1. # 检测到目标主机是否连接正常
  2. $ ping IP地址
  3. # 检测本地网卡工作正常
  4. $ ping 127.0.0.1

远程登录和复制文件

ssh基础

ssh基础

SSH 客户端是一种使用 Secure Shell(SSH协议) 连接到远程计算机的软件程序

  • 利用 SSH 协议 可以有效防止远程管理过程中的信息泄露
  • 通过 SSH 协议 可以对所有传输的数据进行加密,也能够防止 DNS 欺骗和 IP 欺骗
  • SSH 是目前较可靠,专为远程登录会话和其他网络服务 提供安全性的协议
  • SSH 的另一项优点是传输的数据可以是经过压缩的,所以可以加快传输的速度

远程登录和复制文件.png

ssh客户端的简单使用

  1. ssh [-p port] user@remote
  2. SSH -p 22 root@119.23.72.172
  3. port SSH Server 监听的端口,如果不指定,就为默认值 22
  4. user 是在远程机器上的用户名,如果不指定的话默认为当前用户
  5. remote 是远程机器的地址,可以是 IP/域名,或者是 后面会提到的别名
  6. #远程关机
  7. sudo shutdown -r now
  8. #退出当前用户的登录
  9. exit

ssh 这个终端命令只能在 Linux 或者 UNIX 系统下使用
如果在 Windows 系统中,可以安装 Putty 或者 XShell 客户端软件即可

SSH高级

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

  1. cd ~/.ssh/

image.png

配置公钥

  1. # 执行即可生成 SSH 钥匙,一路回车即可
  2. ssh-keygen

配置公钥不用输密码连接服务器

  1. #让远程服务器上记住客户端的公钥
  2. #输入一次密码后就可以不用输密码连接服务器
  3. ssh-copy-id [-p port] user@remote
  4. ssh-copy-id -p 22 root@119.23.72.172
  5. #登陆试试看
  6. ssh -p 22 root@119.23.72.172

配置别名,在vim ~/.ssh/config 追加

  1. Host lqf
  2. HostName 119.23.72.172
  3. User root
  4. Port 22

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

scp

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

  1. # 把本地当前目录下的 01.py 文件 复制到 远程 家目录下的 Desktop/01.py
  2. # 注意:`:` 后面的路径如果不是绝对路径,则以用户的家目录作为参照路径
  3. scp -P port 01.py user@remote:Desktop/01.py
  4. # 把远程家目录下的Desktop/01.py文件 复制到 本地当前目录下的 01.py
  5. scp -P port user@remote:Desktop/01.py 01.py
  6. # 加上 -r 选项可以传送文件夹
  7. # 把当前目录下的demo文件夹 复制到 远程家目录下的Desktop
  8. scp -r demo user@remote:Desktop
  9. # 把远程家目录下的Desktop 复制到 当前目录下的demo文件夹
  10. scp -r user@remote:Desktop demo
  • -r 若给出的源文件是目录文件,则 scp 将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
  • -P 若远程 SSH 服务器的端口不是 22,需要使用大写字母 -P 选项指定端口 ```bash

    把本地复制到远程

    scp -P 22 01.txt python@192.168.0.3:Desktop/01.txt

远程复制本地桌面

scp -P 22 python@192.168.0.3:Desktop/01.txt .

把远程复制到本地

scp -P 22 python@192.168.0.3:Desktop/01.txt 01.txt

复制远程桌面的文件到本地创建的demo

scp -P 22 -r python@192.168.0.3:Desktop/01.txt demo
``` scp 这个终端命令只能在 Linux 或者 UNIX 系统下使用,如果在 Windows 系统中:

  • 可以安装 Putty 使用 pscp 命令行工具
  • 或者安装 FileZilla 使用 FTP 进行文件传输, 在传输文件时,使用的是 FTP 服务 而不是 SSH 服务,因此端口号应该设置为 21