Linux 常用命令汇总(五):网络操作命令

简介: ssh(Secure Shell)是一种加密的网络传输协议,用于在不安全的网络上安全地进行远程登录和其他安全的网络服务scp(secure copy)是一个基于SSH协议的网络文件传输工具,用于在本地和远程计算机之间安全地复制文件wget是一个命令行工具,用于从网络上下载文件ping是一个用于测试网络连接可用性的命令行工具route命令在 Unix 和类 Unix 系统(如 Linux)中用于显示和操作 IP 路由表ifconfig。

一、网络操作命令
1.1 telnet
1.1.1 介绍
telnet 是一个用于远程登录到另一台计算机或设备的网络协议和命令行工具

1.1.2 使用方法
telnet [选项] [主机名或IP地址] [端口号]
1.1.3 参数详解
-l:指定登录名。
-a:尝试自动登录。
-e:设置转义字符。
-6:使用 IPv6。
-c:在命令执行后关闭连接。
-8:使用 8 位字符集。
1.1.4 常见使用案例
1.1.4.1 连接到远程 telnet 服务器
telnet example.com
这将尝试连接到名为 example.com 的远程服务器上的默认 telnet 端口(通常是 23)

1.1.4.2 指定端口号连接
telnet example.com 8080
这将尝试连接到 example.com 上的 8080 端口

1.1.4.3 使用特定登录名连接
telnet -l username example.com
这将尝试使用 username 作为登录名连接到 example.com

1.1.5 注意事项
telnet 通信是不加密的,因此它不适合传输敏感信息,因为数据可以在网络上被截获。对于安全通信,建议使用 SSH(安全外壳协议)。
telnet 主要用于文本模式的远程登录和会话,不支持图形用户界面(GUI)应用程序的远程访问。
在许多现代操作系统中,由于安全原因,telnet 客户端和服务器可能默认不被安装。取而代之的是更安全的远程访问方法,如 SSH。
1.2 ssh
1.2.1 介绍
ssh(Secure Shell)是一种加密的网络传输协议,用于在不安全的网络上安全地进行远程登录和其他安全的网络服务

1.2.2 使用方法
ssh [选项] [用户名@]主机名或IP地址
1.2.3 参数详解
-p:指定端口号。
-q:安静模式,不输出警告和诊断信息。
-X:启用 X11 转发。
-Y:启用信任的 X11 转发。
-C:压缩数据。
-i:指定私钥文件。
-l:指定登录名。
-v:详细模式,输出详细的调试信息。
1.2.4 常见使用案例
1.2.4.1 连接到远程服务器
ssh username@example.com
这将尝试使用 username 作为登录名连接到 example.com 服务器

1.2.4.2 指定端口号连接
ssh -p 2222 username@example.com
这将尝试连接到 example.com 上的 2222 端口

1.2.4.3 启用 X11 转发
ssh -X username@example.com
这将允许你在远程服务器上运行的图形应用程序的图形界面显示在你的本地机器上

1.2.5 注意事项
使用 ssh 之前,你需要在本地机器上安装 ssh 客户端,同时在远程服务器上安装 sshd 服务器。
默认情况下,ssh 使用 22 端口。如果你的服务器使用了不同的端口,需要使用 -p 选项指定。
ssh 依赖于公钥加密技术,你需要有一个公钥和私钥对。公钥通常存储在远程服务器上,而私钥保存在本地。
为了增强安全性,建议使用密钥对进行身份验证,而不是使用密码。
ssh 还支持很多高级功能,如代理命令、隧道转发等。
1.3 scp
1.3.1 介绍
scp(secure copy)是一个基于SSH协议的网络文件传输工具,用于在本地和远程计算机之间安全地复制文件

1.3.2 使用方法
scp [选项] [源文件或目录] [目标用户@]目标主机:目标路径
或者

scp [选项] [目标用户@]目标主机:源文件或目录 [目标路径]
1.3.3 参数详解
-r:递归复制整个目录。
-q:安静模式,不输出传输文件的信息。
-C:启用压缩功能。
-P:指定远程主机的端口号。
-i:指定私钥文件。
-l:限制带宽使用。
1.3.4 常见使用案例
1.3.4.1 从本地复制文件到远程服务器
scp myfile.txt username@example.com:/path/to/destination/
这将把本地的 myfile.txt 文件复制到远程服务器 example.com 上的 /path/to/destination/ 目录中

1.3.4.2 从远程服务器复制文件到本地
scp username@example.com:/path/on/remote/myfile.txt /local/path/
这将从远程服务器 example.com 上的 /path/on/remote/ 目录中复制 myfile.txt 文件到本地的 /local/path/ 目录中

1.3.4.3 递归复制目录
scp -r /local/dir/ username@example.com:/path/on/remote/
这将递归复制本地的 /local/dir/ 目录及其所有内容到远程服务器 example.com 上的 /path/on/remote/ 目录中

1.3.5 注意事项
在使用 scp 之前,确保本地和远程计算机上都已经安装了SSH客户端和服务端。
scp 需要目标计算机的SSH服务正在运行,并且你拥有适当的权限进行文件传输。
与 ssh 一样,scp 也支持公钥认证,允许你无需输入密码即可进行文件传输。
scp 的安全性依赖于SSH协议,因此它是安全的,除非存在SSH协议本身的漏洞或被不正确地配置。
1.4 wget
1.4.1 介绍
wget 是一个命令行工具,用于从网络上下载文件

1.4.2 使用方法
wget [选项] [URL]
1.4.3 参数详解
-O 或 --output-document=文件:将文档写入文件。
-q 或 --quiet:安静模式(无输出)。
-P 或 --directory-prefix=目录:将文件保存到指定目录。
-r 或 --recursive:递归下载。
-np 或 --no-parent:不递归下载上级目录。
-nd 或 --no-directories:不创建目录。
-A 或 --accept=列表:只下载匹配的文件类型。
-R 或 --reject=列表:拒绝下载匹配的文件类型。
-c 或 --continue:断点续传。
-nv 或 --no-verbose:不显示下载的文件名。
-e 或 --execute=命令:执行.wgetrc文件中的命令。
1.4.4 常见使用案例
1.4.4.1 下载单个文件
wget http: //example.com/myfile.txt
这将下载 http: //example.com/myfile.txt 并保存到当前目录

1.4.4.2 下载文件并保存到指定目录
wget -P /path/to/directory http: //example.com/myfile.txt
这将下载文件并保存到 /path/to/directory 目录中

1.4.4.3 递归下载整个网站
wget -r http: //example.com/
这将递归下载 http: //example.com/ 网站上的所有文件

1.4.4.4 下载特定类型的文件
wget -r -A.pdf,.doc http: //example.com/docs/
这将递归下载 http: //example.com/docs/ 目录下的所有 PDF 和 DOC 文件

1.4.5 注意事项
wget 默认会将下载的文件保存到当前工作目录。
使用 -r 选项进行递归下载时,要小心不要下载过多的内容,这可能会消耗大量带宽和磁盘空间。
wget 支持代理服务器和身份验证,可以在命令行中使用相应的选项进行设置。
如果下载过程中出现问题,wget 会尝试重新连接并继续下载,而不是重新开始。
1.5 ping
1.5.1 介绍
ping 是一个用于测试网络连接可用性的命令行工具

1.5.2 使用方法
ping [选项] 目标主机
1.5.3 参数详解
-c:发送指定数量的回显请求后停止。
-i:设置等待每个回显应答的秒数。
-n:只输出数值,不显示主机名。
-q:不显示任何传送封包的信息,只显示最后的统计信息。
-s:指定发送的 ICMP 数据包大小。
-v:详细输出,显示更多的信息。
1.5.4 常见使用案例
1.5.4.1 测试与目标主机的连接
ping www.example.com
这将向 www.example.com 发送 ICMP 回显请求,并显示响应结果

1.5.4.2 发送指定数量的请求
ping -c 4 www.example.com
这将向 www.example.com 发送 4 个 ICMP 回显请求后停止

1.5.4.3 指定数据包大小
ping -s 1024 www.example.com
这将发送大小为 1024 字节的 ICMP 数据包到 www.example.com

1.5.5 注意事项
ping 命令通常用于诊断网络连接问题,例如确定主机是否在线,或者测量网络延迟。
在某些网络中,频繁或大量的 ping 请求可能被视为攻击行为,因此在使用时要谨慎。
默认情况下,ping 会一直发送请求直到用户中断。使用 -c 选项可以限制发送的请求数量。
由于 ICMP 数据包可能被防火墙或路由器阻止,因此即使目标主机在线,ping 也可能失败。
1.6 route
1.6.1 介绍
route 命令在 Unix 和类 Unix 系统(如 Linux)中用于显示和操作 IP 路由表

1.6.2 使用方法
route [-nNvee] [-A inet | inet6] [-f file] [command [arguments]]
1.6.3 参数详解
-n:不解析主机名,以数字形式显示地址。
-e:显示扩展信息,包括接口索引和标志。
-v:详细输出,显示更多信息。
-A:指定地址族,可以是 inet(IPv4)或 inet6(IPv6)。
-f:从指定的文件读取路由表。
add:添加路由。
del:删除路由。
change:修改路由。
1.6.4 常见使用案例
1.6.4.1 显示路由表
route -n
这将显示当前路由表,以数字形式展示 IP 地址和接口索引

1.6.4.2 添加路由
route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.0.1
这将在路由表中添加一条路由,将所有目标网络为 192.168.1.0 且子网掩码为 255.255.255.0 的数据包通过网关 10.0.0.1 发送

1.6.4.3 删除路由
route del -net 192.168.1.0 netmask 255.255.255.0
这将从路由表中删除一条目标网络为 192.168.1.0 且子网掩码为 255.255.255.0 的路由

1.6.5 注意事项
route 命令在大多数现代 Linux 发行版中已经被 ip 命令所取代,因为 ip 命令提供了更强大和灵活的功能。
当你使用 route 命令时,需要具有适当的权限,通常需要使用 sudo。
手动修改路由表通常只在特定的网络配置和故障排查场景下使用。在大多数情况下,网络配置应该通过更高级别的工具(如网络管理器或 DHCP 客户端)来管理。
1.7 ifconfig
1.7.1 介绍
ifconfig(interface configuration)是一个用于配置和显示Linux内核中网络接口参数的命令行工具

1.7.2 使用方法
ifconfig [interface] [options]
1.7.3 参数详解
up:激活指定的网络接口。
down:关闭指定的网络接口。
add

:给指定的网络接口添加IP地址。
del :从指定的网络接口删除IP地址。
netmask :设置网络接口的子网掩码。
broadcast :设置网络接口的广播地址。
pointopoint :设置点对点链接的地址。
1.7.4 常见使用案例
1.7.4.1 显示所有网络接口的配置
ifconfig
这将显示系统上所有网络接口的详细信息,包括IP地址、子网掩码、MAC地址等

1.7.4.2 配置网络接口
ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up
这将配置名为 eth0 的网络接口,设置其IP地址为 192.168.1.100,子网掩码为 255.255.255.0,并激活该接口

1.7.4.3 关闭网络接口
ifconfig eth0 down
这将关闭名为 eth0 的网络接口

1.7.5 注意事项
在新版本的Linux系统中,推荐使用 ip 命令来配置网络接口,因为它提供了更现代、更一致的接口,并且支持IPv6。
ifconfig 命令通常需要root权限才能执行。
当使用 ifconfig 配置网络时,更改将在重启后失效,除非这些设置被写入到网络配置文件中。
1.8 ifup & ifdown
1.8.1 介绍
ifup 和 ifdown 是用于管理网络接口的脚本,它们通常与 /etc/network/interfaces 配置文件一起使用,在基于Debian的系统(如Ubuntu)中提供网络服务

1.8.2 使用方法
1.8.2.1 启动网络接口
sudo ifup interface_name
1.8.2.2 停止网络接口
sudo ifdown interface_name
1.8.3 常见使用案例
1.8.3.1 启动名为 eth0 的网络接口
sudo ifup eth0
1.8.3.2 停止名为 eth0 的网络接口
sudo ifdown eth0
1.8.4 注意事项
ifup 和 ifdown 脚本通常包含在 networking 软件包中,这个软件包在大多数基于Debian的系统中默认安装。
这些脚本的行为取决于 /etc/network/interfaces 文件中的配置。如果配置文件中没有为指定的接口定义任何规则,那么 ifup 和 ifdown 将不会执行任何操作。
在某些情况下,网络管理可能通过其他工具(如 NetworkManager)进行,这种情况下 ifup 和 ifdown 可能不会起作用。
使用 ifup 和 ifdown 时,需要具有适当的权限,通常需要使用 sudo 命令。
1.9 netstat
1.9.1 介绍
netstat(网络统计)是一个命令行工具,用于显示网络连接、路由表、接口统计等信息

1.9.2 使用方法
netstat [options]
1.9.3 参数详解
-a:显示所有活动的网络连接和监听的端口。
-n:以数字形式显示地址和端口号,不进行DNS解析。
-t:显示TCP连接。
-u:显示UDP连接。
-r:显示路由表。
-s:显示网络统计信息。
-l:仅显示监听的套接字。
-p:显示与每个连接相关联的进程ID和名称。
1.9.4 常见使用案例
1.9.4.1 显示所有活动的TCP和UDP连接
netstat -a
1.9.4.2 以数字形式显示所有TCP连接
netstat -ant
1.9.4.3 显示监听端口
netstat -l
1.9.4.4 显示路由表
netstat -r
1.9.4.5 显示网络统计信息
netstat -s
1.9.5 注意事项
netstat 命令可能需要root权限才能显示所有信息。
在一些新版本的Linux发行版中,netstat 可能不是默认安装的。如果没有安装,可以通过包管理器(如 apt 或 yum)进行安装。
netstat 的输出信息可能非常详细,因此通常需要使用管道(|)和文本处理工具(如 grep)来过滤和查找特定的信息。
1.10 ss
1.10.1 介绍
ss(socket statistics)是一个用于查看系统套接字信息的命令行工具

1.10.2 使用方法
ss [options]
1.10.3 参数详解
-t:显示TCP套接字。
-u:显示UDP套接字。
-n:以数字形式显示地址和端口号,不进行DNS解析。
-l:仅显示监听的套接字。
-p:显示与每个套接字相关联的进程ID和名称。
-s:显示套接字统计信息。
-a:显示所有套接字,包括那些未连接的。
-4:仅显示IPv4套接字。
-6:仅显示IPv6套接字。
1.10.4 常见使用案例
1.10.4.1 显示所有活动的TCP和UDP套接字
ss -atu
1.10.4.2 以数字形式显示所有监听的TCP套接字
ss -ltn
1.10.4.3 显示与特定进程相关的套接字
ss -p -u src <process_id>
1.10.4.4 显示套接字统计信息
ss -s
1.10.5 注意事项
ss通常比netstat更快,因为它直接从内核中获取套接字信息,而不需要扫描/proc文件系统。
ss的输出格式与netstat略有不同,但大多数常用的信息都可以在ss的输出中找到。
ss命令在大多数现代Linux发行版中都是可用的,但它可能不是所有发行版的默认安装。如

目录
打赏
0
0
0
0
81
分享
相关文章
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
linux命令—tree
linux命令—cd
`cd` 命令是 Linux/Unix 系统中用于切换工作目录的基础命令。支持相对路径与绝对路径,常用选项如 `-L` 和 `-P` 分别处理符号链接的逻辑与物理路径。实际操作中,可通过 `cd ..` 返回上级目录、`cd ~` 回到家目录,或利用 `cd -` 在最近两个目录间快速切换。结合 Tab 补全和 `pwd` 查看当前路径,能显著提升效率。此外,需注意特殊字符路径的正确引用及脚本中绝对路径的优先使用。
|
23天前
|
Linux命令拓展:为cp和mv添加进度显示
好了,就这样,让你的Linux复制体验充满乐趣吧!记住,每一个冷冰冰的命令背后,都有方法让它变得热情起来。
69 8
Linux环境下必备的基础命令概览
以上就是Linux系统中的基本命令和工具,掌握它们就能帮你在Linux世界里游刃有余。这其实就像是学习驾驭一辆新车,熟悉了仪表盘,调整好了座椅,之后的旅程就只需要享受风驰电掣的乐趣了。
46 4
详解Ubuntu的strings与grep命令:Linux开发的实用工具。
这就是Ubuntu中的strings和grep命令,透明且强大。我希望你喜欢这个神奇的世界,并能在你的Linux开发旅程上,通过它们找到你的方向。记住,你的电脑是你的舞台,在上面你可以做任何你想做的事,只要你敢于尝试。
153 32
linux命令—pwd
`pwd` 是 Linux/Unix 系统中的基础命令,用于显示用户当前所在的工作目录路径,帮助确认在文件系统中的位置。其核心功能包括打印逻辑路径(默认,-L 选项)和物理路径(-P 选项)。典型应用场景涵盖确认当前位置、调试符号链接问题及脚本编程中动态获取与操作路径。使用时需注意符号链接的区别、参数选择以及特殊字符处理,确保命令正确执行并满足需求。
|
2月前
|
Linux命令大全:echo与tail实现输出重定向。
这样,我们实现了使用echo和tail命令进行输出重定向的目的。在实际应用中,输出重定向技巧可节省时间,提高工作效率。希望本文内容对您了解和掌握Linux系统中echo与tail命令以及输出重定向的操作有所帮助。
120 27
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
85 18
linux命令使用消费kafka的生产者、消费者
linux命令使用消费kafka的生产者、消费者
133 16
Linux环境下如何通过手动调用drop_caches命令释放内存
总的来说,记录住“drop_caches” 命令并理解其含义,可以让你在日常使用Linux的过程中更加娴熟和自如。
487 23
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等