查看连接到本机ftp服务器的指定ip
2015-03-13 14:13
162 查看
问题:作为ftp服务器,会收到不同服务器传过去的文件。不同的服务器会使用不同的用户。如果希望查看某一目录的文件(不同的ftp用户使用不同的目录)来源,如何查找对端的ip?
1、通过/etc/passwd,可以找到指定目录对应的ftp用户
2、通过“netstat |grep ftp”,可以查找ftp到本机的所有远端ip
3、如果远端ip只有一个,那么,则找到该ip。
如果远端ip不止一个,一个比较笨的办法,就是一个个登录,确定对应的ip。
下面说的是另一种办法。
我们知道,ftp的传输是明文传输的,因此,传输的过程中,一定可以明文找到对应的用户名。举例如下:
上面是使用tcpdump抓的一个ftp连接过程的包,我们可以看到用户名“elog_user”是明文显示的(注意换行)。
那么既然我们已经知道了指定目录文件对应的ftp用户,那么我们也就可以确定使用该ftp用户的对端ftp,这样就可以达到目的。
4、 在ftp服务器上使用tcpdump抓取ftp对应的包(端口为21)
抓取eth2网卡中端口为21的数据,并打印包的数据,重定向到文件“/tmp/a.log”
tcpdump -i eth2 -nn port 21 -X |tee /tmp/a.log
注:需要指定网卡,否则可能会出现下面的错误提示:
tcpdump: USB link-layer type filtering not implemented
网卡根据实际情况指定,获取的方法为“ifconfig”
5、查找指定用户,并显示上几行数据
因为对应的ip都在显示用户的上几行,因此,需要使用grep的“-B”参数
注:grep -B NUM 表示显示筛选的字符串及上面NUM行
通过以上方法,就可以显示指定ftp用户对应的对端ip。
扩展阅读: http://www.52souji.net/how-to-obtain-some-lines-before-or-after-a-specified-string-in-linux/ 获取特定字符串前后几行数据
http://zebozhuang.blog.163.com/blog/static/17147980420128913935138/ tcpdump抓包的时候,指定网卡
1、通过/etc/passwd,可以找到指定目录对应的ftp用户
[root@YMM tmp]# cat /etc/passwd|grep elog_user elog_user:x:502:503::/home/Unicom/elogDir:/sbin/nologin
2、通过“netstat |grep ftp”,可以查找ftp到本机的所有远端ip
[root@YMM tmp]# netstat |grep ftp tcp 0 0 172.168.1.155:50750 172.168.1.161:ftp ESTABLISHED tcp 0 0 172.168.1.155:ftp 172.168.1.154:51981 TIME_WAIT tcp 0 0 172.168.1.155:ftp 172.168.1.154:51977 TIME_WAIT tcp 0 0 172.168.1.155:ftp 172.168.1.154:51979 TIME_WAIT tcp 0 0 172.168.1.155:ftp 172.168.1.168:57437 TIME_WAIT tcp 0 0 172.168.1.155:ftp 172.168.1.168:57425 TIME_WAIT
3、如果远端ip只有一个,那么,则找到该ip。
如果远端ip不止一个,一个比较笨的办法,就是一个个登录,确定对应的ip。
下面说的是另一种办法。
我们知道,ftp的传输是明文传输的,因此,传输的过程中,一定可以明文找到对应的用户名。举例如下:
10:40:40.629789 IP 172.168.1.154.51627 > 172.168.1.155.21: Flags [P.], seq 1:17, ack 21, win 115, options [nop,nop,TS val 1804049752 ecr 1800293869], length 16 0x0000: 4500 0044 38a6 4000 4006 7d88 c0a8 019a E..D8.@.@.}..... 0x0010: c0a8 019b c9ab 0015 b4cf a5f7 16cd ee1b ................ 0x0020: 8018 0073 8f56 0000 0101 080a 6b87 9d58 ...s.V......k..X 0x0030: 6b4e 4ded 5553 4552 2065 6c6f 675f 7573 kNM.USER.elog_us 0x0040: 6572 0d0a er.. 10:40:40.629804 IP 172.168.1.155.21 > 172.168.1.154.51627: Flags [.], ack 17, win 114, options [nop,nop,TS val 1800293869 ecr 1804049752], length 0 0x0000: 4500 0034 a3ee 4000 4006 1250 c0a8 019b E..4..@.@..P.... 0x0010: c0a8 019a 0015 c9ab 16cd ee1b b4cf a607 ................ 0x0020: 8010 0072 0629 0000 0101 080a 6b4e 4ded ...r.)......kNM. 0x0030: 6b87 9d58 k..X
上面是使用tcpdump抓的一个ftp连接过程的包,我们可以看到用户名“elog_user”是明文显示的(注意换行)。
那么既然我们已经知道了指定目录文件对应的ftp用户,那么我们也就可以确定使用该ftp用户的对端ftp,这样就可以达到目的。
4、 在ftp服务器上使用tcpdump抓取ftp对应的包(端口为21)
抓取eth2网卡中端口为21的数据,并打印包的数据,重定向到文件“/tmp/a.log”
tcpdump -i eth2 -nn port 21 -X |tee /tmp/a.log
注:需要指定网卡,否则可能会出现下面的错误提示:
tcpdump: USB link-layer type filtering not implemented
网卡根据实际情况指定,获取的方法为“ifconfig”
5、查找指定用户,并显示上几行数据
因为对应的ip都在显示用户的上几行,因此,需要使用grep的“-B”参数
注:grep -B NUM 表示显示筛选的字符串及上面NUM行
[root@YMM tmp]# grep -B 4 "elog_us" a.log 10:40:30.397662 IP 172.168.1.154.51625 > 172.168.1.155.21: Flags [P.], seq 1:17, ack 21, win 115, options [nop,nop,TS val 1804039520 ecr 1800283637], length 16 0x0000: 4500 0044 3673 4000 4006 7fbb c0a8 019a E..D6s@.@....... 0x0010: c0a8 019b c9a9 0015 a6bc 432e f08c e246 ..........C....F 0x0020: 8018 0073 823a 0000 0101 080a 6b87 7560 ...s.:......k.u` 0x0030: 6b4e 25f5 5553 4552 2065 6c6f 675f 7573 kN%.USER.elog_us -- 10:40:40.629789 IP 172.168.1.154.51627 > 172.168.1.155.21: Flags [P.], seq 1:17, ack 21, win 115, options [nop,nop,TS val 1804049752 ecr 1800293869], length 16 0x0000: 4500 0044 38a6 4000 4006 7d88 c0a8 019a E..D8.@.@.}..... 0x0010: c0a8 019b c9ab 0015 b4cf a5f7 16cd ee1b ................ 0x0020: 8018 0073 8f56 0000 0101 080a 6b87 9d58 ...s.V......k..X 0x0030: 6b4e 4ded 5553 4552 2065 6c6f 675f 7573 kNM.USER.elog_us
通过以上方法,就可以显示指定ftp用户对应的对端ip。
扩展阅读: http://www.52souji.net/how-to-obtain-some-lines-before-or-after-a-specified-string-in-linux/ 获取特定字符串前后几行数据
http://zebozhuang.blog.163.com/blog/static/17147980420128913935138/ tcpdump抓包的时候,指定网卡
相关文章推荐
- Serv-U 14.0.2常见问题:IP地址变换导致FTP服务器连接失败
- 在linux下,扫描连接到服务器指定端口的客户端ip信息,以及每个ip有几个链接。
- 查看指定端口的网络连接情况; 查看指定IP的占用情况;
- 查看通过ftp服务访问本服务器的所有服务器的IP
- 查看服务器的TCP/IP(http)连接情况
- mysql授权用户root使用密码password从指定ip为192.168.1.1的主机连接到mysql服务器
- hosts.allow限制ip连接服务器各个服务(ftp、ssh等)
- 查看服务器IP连接数
- FTP 与服务器的连接被重置的另类原因与另类解决【IP冲突】
- linux下用ftp命令连接到ftp服务器应该如何查看服务器上的目录文件数
- 内网+动态IP 建立FTP服务器(Serv-U)
- 修改linux设置客户端连接,一般设置Ip以区别不同服务器。
- 无法添加打印机:操作无法完成,键入的打印机名不正确,或者指定的打印机没有连接到服务器上
- FTP之‘基础连接已关闭:服务器提交了协议冲突’错误探析
- 服务器和客户机通过TCP/IP三次握手建立一个连接
- 函数用途:同一域名对应多个IP时,获取指定服务器的远程网页内容
- FTP上传指定文件夹及其文件到服务器
- Java连接ftp服务器实例代码
- svn查看日志显示连接服务器失败。你想使用缓存中的数据吗?
- 通过ftp上传文件到指定服务器