文件共享
scp(Secure Copy)是 Linux 系统下用于在本地主机和远程主机之间进行安全文件传输的命令。它使用 SSH 协议进行数据传输,保证了数据的安全性。
scp [参数] [源文件] [[]()目标位置][[nc1]](#_msocom_1)
-r:递归复制目录及其内容
-P <port>:指定 SSH 连接的端口号,默认为 22
-i <identity_file>:指定用于身份验证的私钥文件
-v:显示详细的调试信息,用于故障排除
-p:保留文件的时间戳和权限设置
FTP 软件包名:vsftpd
FTP(File Transfer Protocol: 文件传输协议)作用:Internet 上用来传送文件的协议。
FTP服务器默认使用TCP协议的20、21端口与客户端进行通信
-
20端口用于建立数据连接,并传输文件数据
-
21端口用于建立控制连接,并传输FTP控制命令
FTP两种数据连接
主动模式(Active Mode):
在主动模式下,FTP 客户端由一个随机选择的本地端口 N 发起控制连接到 FTP 服务器的默认端口 21。
当需要建立数据连接时,服务器将使用它自己的端口 20 向客户端的端口 N+1 发起连接。
这种模式下,FTP 服务器主动地连接 FTP 客户端的数据端口。
被动模式(Passive Mode):
在被动模式下,FTP 客户端向服务器的默认端口 21 发起控制连接。
当需要建立数据连接时,服务器将开放一个随机选择的端口 P,并将其作为响应发送给客户端。
FTP 客户端将在端口 P 上建立数据连接,而服务器则等待客户端连接。
这种模式下,FTP 服务器被动地等待 FTP 客户端的数据连接。
Vsftpd配置文件:
anonymous_enable=YES #开启匿名用户访问。默认已开启
write_enable=YES #开放服务器的写权限(若要上传,必须开启)。默认已开启
anon_umask=022 #设置匿名用户所上传数据的权限掩码(反掩码)。
anon_upload_enable=YES #允许匿名用户.上传文件。默认已注释,需取消注释
anon_mkdir_write_enable=YES #允许匿名用户创建(上传)目录。默认已注释,需取消注释
anon_other_write_enable =YES #允许删除、重命名、覆盖等操作。需添加
ftp 服务器IP地址 //建立连接
在此模式中
get 文件 //下载指定文件
put 文件 //上传指定文件
help //查看命令帮助
查询指令
ifconfig
ifconfig //显示当前主机中已启用的网络接口信息。
ifconfig -a //显示所有网络接口(包括没有启动的网卡)
ifconfig网卡名 //查询指定网卡的详细信息
ifconfig 网卡名 up/down //开启或关闭指定网卡
ifconfig 网络接口 IP地址[netmask子网掩码长度] //添加一块虚拟网卡
route
route -n //显示当前路由表
字段意思:
Destination:目标网络或主机的 IP 地址。
Gateway:下一跳的网关地址。若为 0.0.0.0,则表示默认网关。
Genmask:目标网络或主机的子网掩码。
Flags:标识该路由的特殊条件和行为的标志。
Metric:用于选择最佳路由的度量值。
Ref:路由表条目的引用计数。
Use:路由表条目被使用的次数。
Iface:该路由通过哪个网络接口。
route add -net <目标网络> netmask <子网掩码> gw <网关地址> dev <接口> //添加静态路由
route add default gw <默认网关地址> //添加默认网关
route del -net <目标网络> netmask <子网掩码> gw <网关地址> dev <接口> //删除静态路由
route del default gw <默认网关地址> //删除默认网关
netsat
netsat 参数 //显示活动的网络连接、路由表和接口统计信息 较于ifconfig信息更为详细
-a //显示所有连接,包括监听和非监听状态
-t //显示TCP协议的连接
-u //显示UDP协议的连接
-n //以数字形式显示IP地址和端口号,而不是以主机名和服务名显示
-p //显示与每个连接关联的进程ID和进程名称
-r //显示路由表
-s //显示网络接口的统计信息
ping
ping 参数 IP地址 //测试主机之间的连通性和延迟
-c <次数>: 指定发送的ICMP请求次数。
-i <时间间隔>: 指定发送ICMP请求的时间间隔(秒)。
-s <数据大小>: 指定发送的ICMP数据包的大小(字节)。
-t <TTL值>: 设置IP数据包的生存时间(TTL)。
-W <超时时间>: 设置ICMP请求的超时时间(秒)。
-q: 静默模式,只显示结果汇总。
-n: 以数字形式显示IP地址,而不是以主机名显示。
traceroute
traceroute 参数 IP地址 //路由跟踪
-I 或 --icmp: 使用ICMP Echo消息而不是默认的UDP数据包进行路由跟踪。
-T 或 --tcp: 使用TCP SYN数据包进行路由跟踪。
-U 或 --udp: 使用UDP数据包进行路由跟踪。
-p <端口号> 或 --port=<端口号>: 指定使用的目标端口号。
-n 或 --numeric: 以数字形式显示IP地址,而不是以主机名显示。
-f <跳数> 或 --first=<跳数>: 指定从几跳开始进行路由跟踪。
-m <跳数> 或 --max-hops=<跳数>: 指定最大的跳数。
地址解析
nslookup 参数 服务器地址 //域名解析
dig 参数 查询类型 域名 //域名解析 显示信息更为详细
常见查询类型
A记录查询(IP地址查询):A
AAAA记录查询(IPv6地址查询):AAAA
CNAME记录查询:CNAME
MX记录查询(邮件服务器查询):MX
NS记录查询(域名服务器查询):NS
PTR记录查询(反向查询):PTR
SOA记录查询(起始授权机构查询):SOA
TXT记录查询(文本记录查询):TXT
抓包指令
格式:tcpdump [-adeflnNOpqStvx][-c<数据包数目>][-dd][-ddd][-F<表达文件>][-i<网络界面>][-r<数据包文件>][-s<数据包大小>][-tt][-T<数据包类型>][-vv][-w<数据包文件>][输出数据栏位]
参数:
-a 尝试将网络和广播地址转换成名称。
-A:以纯文本的形式显示应用层数据。
-c<数据包数目> 收到指定的数据包数目后,就停止进行倾倒操作。
-d 把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出。
-dd 把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出。
-ddd 把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。
-e 在每列倾倒资料上显示连接层级的文件头。
-f 用数字显示网际网络地址。
-F<表达文件> 指定内含表达方式的文件。
-i<网络接口> 使用指定的网络截面送出数据包。
-l 使用标准输出列的缓冲区。
-n 不把主机的网络地址转换成名字。
-N 不列出域名。
-O 不将数据包编码最佳化。
-p 不让网络界面进入混杂模式。
-q 快速输出,仅列出少数的传输协议信息。
-r<数据包文件> 从指定的文件读取数据包数据。
-s<数据包大小> 设置每个数据包的大小。
-S 用绝对而非相对数值列出TCP关联数。
-t 在每列倾倒资料上不显示时间戳记。
-tt 在每列倾倒资料上显示未经格式化的时间戳记。
-T<数据包类型> 强制将表达方式所指定的数据包转译成设置的数据包类型。
-v 详细显示指令执行过程。
-vv 更详细显示指令执行过程。
-x 用十六进制字码列出数据包资料。
-XX:以16进制和ASCII的混合形式显示应用层数据。
-w<数据包文件> 把数据包数据写入指定的文件。