PRF:20180104 4 Tools for Network Snooping on Linux.md

@wyxplus 翻译很用心。
This commit is contained in:
Xingyu.Wang 2018-05-30 05:20:01 +08:00
parent 52c25dca16
commit d82ff5d2c7

View File

@ -1,13 +1,15 @@
四个Linux网络嗅探工具 四个 Linux 上的网络嗅探工具
====== ======
在计算机网络中,数据是暴露的,因为数据包传输是无法隐藏的,所以让我们来使用 `whois`,`dig``nmcli` 和 `nmap` 这四个工具来嗅探网络吧。 ![](https://www.linux.com/sites/lcom/files/styles/rendered_file/public/1280px-eudyptula_minor_family_exiting_burrow.jpg?itok=kGZ53AzN)
请注意,不要运行 `nmap` 在不属于自己的网络上,因为这有可能会被其他人解读成为恶意攻击。 在计算机网络中,数据是暴露的,因为数据包传输是无法隐藏的,所以让我们来使用 `whois`、`dig`、`nmcli` 和 `nmap` 这四个工具来嗅探网络吧。
请注意,不要在不属于自己的网络上运行 `nmap` ,因为这有可能会被其他人认为恶意攻击。
### 精简和详细域名信息查询 ### 精简和详细域名信息查询
您可能已经注意到,之前我们用心爱的 `whois` 命令查询域名信息,但现如今似乎没有提供同过去一样的详细程度。我们使用该命令查询 Linux.com 域名描述信息: 您可能已经注意到,之前我们用常用的老式 `whois` 命令查询域名信息,但现如今似乎没有提供同过去一样的详细程度。我们使用该命令查询 linux.com 的域名描述信息:
``` ```
$ whois linux.com $ whois linux.com
@ -30,19 +32,19 @@ DNSSEC: unsigned
[...] [...]
``` ```
有很多令人讨厌的法律声明。但在哪有联系信息呢?该网站位于 whois.namecheap.com 站点上(见上面输出的第三行): 有很多令人讨厌的法律声明。但在哪有联系信息呢?该网站位于 `whois.namecheap.com` 站点上(见上面输出的第三行):
``` ```
$ whois -h whois.namecheap.com linux.com $ whois -h whois.namecheap.com linux.com
``` ```
我就不复制出来因为这实在太长了包含了注册人管理员和技术人员的联系信息。怎么回事啊露西尔LCTT 译注:《行尸走肉》中尼根的棒子)有一些注册表,比如.com和.net是精简注册表保存了一部分有限的域名信息。为了获取完整信息请使用 `-h``--host` 参数,该参数便会从域名的 `注册服务机构` 中获取。
大部分顶级域名是需要详细的注册信息,如.info。试着使用`whois blockchain.info`命令来查看。 我就不复制出来了因为这实在太长了包含了注册人管理员和技术人员的联系信息。怎么回事啊露西尔LCTT 译注:《行尸走肉》中尼根的棒子)有一些注册库,比如 .com 和 .net 是精简注册库,保存了一部分有限的域名信息。为了获取完整信息请使用 `-h``--host` 参数,该参数便会从域名的 `注册服务机构` 中获取。
大部分顶级域名是有详细的注册信息,如 .info。试着使用 `whois blockchain.info` 命令来查看。
想要摆脱这些烦人的法律声明?使用 `-H` 参数。 想要摆脱这些烦人的法律声明?使用 `-H` 参数。
### DNS解析 ### DNS 解析
使用 `dig` 命令比较从不同的域名服务器返回的查询结果,去除陈旧的信息。域名服务器记录缓存各地的解析信息,并且不同的域名服务器有不同的刷新间隔。以下是一个简单的用法: 使用 `dig` 命令比较从不同的域名服务器返回的查询结果,去除陈旧的信息。域名服务器记录缓存各地的解析信息,并且不同的域名服务器有不同的刷新间隔。以下是一个简单的用法:
@ -69,19 +71,18 @@ linux.com. 10800 IN A 151.101.193.5
;; SERVER: 127.0.1.1#53(127.0.1.1) ;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Tue Jan 16 15:17:04 PST 2018 ;; WHEN: Tue Jan 16 15:17:04 PST 2018
;; MSG SIZE rcvd: 102 ;; MSG SIZE rcvd: 102
``` ```
注意下靠近末尾的这行信息SERVER: 127.0.1.1#53(127.0.1.1)这是您默认的缓存解析器。当地址是本地时就相当于在您的电脑上安装DNS服务。在我看来这就是一个Dnsmasq工具LCTT 译注是一个小巧且方便地用于配置DNS和DHCP的工具该工具被用作网络管理
注意下靠近末尾的这行信息:`SERVER: 127.0.1.1#53(127.0.1.1)`,这是您默认的缓存解析器。当地址是本地时,就表明您的电脑上安装了 DNS 服务。在我看来这就是一个 Dnsmasq 工具LCTT 译注:是一个小巧且方便地用于配置 DNS 和 DHCP 的工具),该工具被用作网络管理:
``` ```
$ ps ax|grep dnsmasq $ ps ax|grep dnsmasq
2842 ? S 0:00 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground 2842 ? S 0:00 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground
--no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid --no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid
--listen-address=127.0.1.1 --listen-address=127.0.1.1
``` ```
`dig` 命令默认是返回A记录也就是域名。IPv6则有AAAA记录 `dig` 命令默认是返回 A 记录也就是域名。IPv6 则有 AAAA 记录:
``` ```
$ $ dig linux.com AAAA $ $ dig linux.com AAAA
@ -92,48 +93,44 @@ linux.com. 60 IN AAAA 64:ff9b::9765:4105
linux.com. 60 IN AAAA 64:ff9b::9765:8105 linux.com. 60 IN AAAA 64:ff9b::9765:8105
linux.com. 60 IN AAAA 64:ff9b::9765:c105 linux.com. 60 IN AAAA 64:ff9b::9765:c105
[...] [...]
``` ```
仔细检查下,发现Linux.com有IPv6地址。很好如果您的网络服务支持IPv6那么您就可以用IPv6连接。令人难过的是我的移动宽带则没提供IPv6 仔细检查下,发现 linux.com 有 IPv6 地址。很好!如果您的网络服务支持 IPv6 那么您就可以用 IPv6 连接。(令人难过的是,我的移动宽带则没提供 IPv6
假设您能对您的域名做一些 DNS 改变,又或是您使用 `dig` 查询的结果有误。试着用一个公共 DNS如 OpenNIC
假设您能使DNS改变您的域名又或是您使用 `dig` 查询的结果有误。试着用一个公共DNS如OpenNIC:
``` ```
$ dig @69.195.152.204 linux.com $ dig @69.195.152.204 linux.com
[...] [...]
;; Query time: 231 msec ;; Query time: 231 msec
;; SERVER: 69.195.152.204#53(69.195.152.204) ;; SERVER: 69.195.152.204#53(69.195.152.204)
``` ```
`dig` 回应您正在的查询是来自 69.195.152.204。您可以查询各种服务并且比较结果。 `dig` 回应您正在的查询是来自 69.195.152.204。您可以查询各种服务并且比较结果。
### 上游域名服务器 ### 上游域名服务器
我想知道我的上游域名服务器是谁。为了查询,我首先看下`/etc/resolv/conf` 的配置信息: 我想知道我的上游域名服务器LCTT 译注:此处指解析器)是谁。为了查询,我首先看下 `/etc/resolv/conf` 的配置信息:
``` ```
$ cat /etc/resolv.conf $ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1 nameserver 127.0.1.1
``` ```
很幸运不过我是已经知道。您的Linux发行版可能配置不同,您会看到您的上游服务器。接下来我们来试试网络管理器命令行工具 `nmcli` 好吧,不过我已经知道了。您的 Linux 发行版可能配置不同,您会看到您的上游服务器。接下来我们来试试网络管理器命令行工具 `nmcli`
``` ```
$ nmcli dev show | grep DNS $ nmcli dev show | grep DNS
IP4.DNS[1]: 192.168.1.1 IP4.DNS[1]: 192.168.1.1
``` ```
很好,现在我们已经知道了,其实那是我的移动热点,并且我已经确认那是我的热点。我能够登录到简易管理面板,来查询上游服务器。然而许多消费者互联网网关不会让您看到或改变这些设置,因此只能尝试其他的方法,如 [我的域名服务器是什么?][1] 很好,现在我们已经知道了,其实那是我的移动热点,我能确认。我能够登录到简易管理面板,来查询上游服务器。然而许多用户级互联网网关不会让您看到或改变这些设置,因此只能尝试其他的方法,如 [我的域名服务器是什么?][1]
### 查找在您的网络中IPv4地址 ### 查找在您的网络中 IPv4 地址
您的网络上有哪些IPv4地址已启用并正在使用中 您的网络上有哪些 IPv4 地址已启用并正在使用中?
``` ```
$ nmap -sn 192.168.1.0/24 $ nmap -sn 192.168.1.0/24
@ -145,8 +142,8 @@ Host is up (0.000071s latency).
Nmap scan report for nellybly (192.168.1.3) Nmap scan report for nellybly (192.168.1.3)
Host is up (0.015s latency) Host is up (0.015s latency)
Nmap done: 256 IP addresses (2 hosts up) scanned in 2.23 seconds Nmap done: 256 IP addresses (2 hosts up) scanned in 2.23 seconds
``` ```
每个人都想去扫描自己的局域网中开放的端口。下面的例子是寻找服务和他们的版本号: 每个人都想去扫描自己的局域网中开放的端口。下面的例子是寻找服务和他们的版本号:
``` ```
@ -171,10 +168,9 @@ Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 256 IP addresses (2 hosts up) scanned in 11.65 seconds Nmap done: 256 IP addresses (2 hosts up) scanned in 11.65 seconds
``` ```
这些是有趣的结果。让我们尝试从不同的网络帐户进行相同的操作以查看这些服务是否暴露于互联网中。如果您有智能手机相当于您有第二个网络。您可以下载应用程序还可以为您的Linux电脑提供热点。从热点控制面板获取广域网IP地址然后重试 这些是有趣的结果。让我们尝试从不同的互联网连接进行相同的操作,以查看这些服务是否暴露于互联网中。如果您有智能手机,相当于您有第二个网络。您可以下载应用程序,还可以为您的 Linux 电脑提供热点。从热点控制面板获取广域网IP地址然后重试
``` ```
$ nmap -sV 12.34.56.78 $ nmap -sV 12.34.56.78
@ -183,13 +179,11 @@ Starting Nmap 7.01 ( https://nmap.org ) at 2018-01-14 17:05 PST
Nmap scan report for 12.34.56.78 Nmap scan report for 12.34.56.78
Host is up (0.0061s latency). Host is up (0.0061s latency).
All 1000 scanned ports on 12.34.56.78 are closed All 1000 scanned ports on 12.34.56.78 are closed
``` ```
果然不出所料,结果和我想象的一样。可以用手册来查询这些命令,以便了解更多有趣的嗅探技术。
果然不出所料结果和我想象的一样LCTT 译注:这些服务和信息没有被暴露在公网上)。可以用手册来查询这些命令,以便了解更多有趣的嗅探技术。
了解更多Linux的相关知识可以从Linux基金会和edXLCTT译者注edX是麻省理工和哈佛大学于2012年4月联手创建的大规模开放在线课堂平台中获取免费的 ["介绍Linux" ][2]课程。 了解更多 Linux 的相关知识可以从 Linux 基金会和 edXLCTT译注edX 是麻省理工和哈佛大学于 2012 年 4 月联手创建的大规模开放在线课堂平台)中获取免费的 [“介绍 Linux”][2]课程。
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
@ -197,7 +191,7 @@ via: https://www.linux.com/learn/intro-to-linux/2018/1/4-tools-network-snooping-
作者:[Carla Schroder][a] 作者:[Carla Schroder][a]
译者:[wyxplus](https://github.com/wyxplus) 译者:[wyxplus](https://github.com/wyxplus)
校对:[校对者ID](https://github.com/校对者ID) 校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出