AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 39893
Accepted
Malfist
Malfist
Asked: 2009-07-14 06:35:10 +0800 CST2009-07-14 06:35:10 +0800 CST 2009-07-14 06:35:10 +0800 CST

关闭 FTP

  • 772

我正在设置一个新的 debian 服务器,我不需要 FTP,所以我想删除它。根据 netstat -tap,ftp 没有监听任何东西。但是,当我在外部进行端口扫描(nmap)时,它说 ftp 端口是打开的(21)。inetd 没有启动任何东西,xinetd 不在系统上。

我应该怎么办?

netstat 点击的结果

obu1:/etc/pam.d# netstat -tap
活动 Internet 连接(服务器和已建立)
Proto Recv-Q Send-Q 本地地址 外部地址 状态 PID/程序名称
tcp 0 0 *:225 *:* LISTEN 2237/sbadm
tcp6 0 0 *:ssh *:* LISTEN 2399/sshd
tcp6 0 448 obu1.hostname.:ssh rrcs-XXX-XXX-XXX-XXX:56721 ESTABLISHED 16639/sshd: 用户名

来自非本地的 NMap

在东部夏令时间 2009-07-13 10:47 开始 Nmap 4.90RC1 ( http://nmap.org )
obu1.hostname(ipaddress)上的有趣端口:
未显示:972 个封闭端口,26 个过滤端口
港口国服务
21/tcp 打开 ftp
22/tcp 打开 ssh

Nmap 完成:在 3.60 秒内扫描了 1 个 IP 地址(1 个主机启动)
ftp debian security hardening
  • 8 8 个回答
  • 1483 Views

8 个回答

  • Voted
  1. Best Answer
    FWH
    2009-07-14T07:44:34+08:002009-07-14T07:44:34+08:00

    您应该知道 Windows XP(可能还有其他版本)有一个用于 FTP 连接的内部包装器(这样做的目的是尝试让 PORT 命令成功完成,即使在防火墙或路由器后面)。

    这个包装器拦截到任何主机的 21 端口连接,因此它可以监视它并尝试打开客户端发出的 PORT 命令的传入端口。

    这个包装器还有一个副作用:当它拦截到端口 21 的任何连接时,它会向软件发送一个连接已建立的信号,软件将看到连接已建立,但实际上只建立了与 Windows 内部的连接。包装。

    然后包装器尝试打开与真实主机的连接,如果超时,它会向软件发送一个信号,表明连接已丢失。该软件会将连接视为丢失。

    综上所述,该软件认为连接已成功建立,然后丢失,但尚未建立真正的连接。

    所以,在你的情况下,会发生什么:你运行 nmap。Nmap 尝试在端口 21 上连接到您的服务器。Windows 的包装程序会拦截该连接。Nmap “认为”它已连接到您的服务器(但它仅连接到包装器),并报告端口已打开。

    您可以通过在命令行中输入来确认这一点:

    FTP 4.3.2.1

    你会看到:C:>ftp 4.3.2.1

    连接到 4.3.2.1。

    外部主机关闭连接。

    您可以尝试任何有效的 IP,ftp 将始终连接,并在不久之后断开连接,而它应该报告“连接超时”。

    我从未见过任何有关此的文档。经过多次调查,我发现了这种奇怪的行为,经过更多调查,发现了它为什么会在这里。

    好吧,这个(大)答案的结论是,正如 netstat 报告的那样,您的服务器的端口 21 肯定是关闭的,并且 nmap 被这种行为所愚弄。

    • 4
  2. Troggy
    2009-07-14T06:39:02+08:002009-07-14T06:39:02+08:00

    apt-get 删除 --purge ftp

    用调用的包替换 ftp。我不确定它到底是什么,但据我所知,命令应该可以工作。

    易于清洁

    这将在卸载后清理您的 var 目录。

    • 3
  3. Matt
    2009-07-14T06:47:02+08:002009-07-14T06:47:02+08:00

    使用以下命令之一找出实际在端口 21 上侦听的程序。

    netstat -lp
    
    lsof -i :21
    

    这应该可以帮助您找出需要删除或重新配置的特定包。

    • 3
  4. chaos
    2009-07-14T06:48:30+08:002009-07-14T06:48:30+08:00

    根据inetd您运行的内容和配置样式,在 和/或 中查找 ftp/etc/inetd.conf服务/etc/xinetd.d定义/etc/xinetd.conf。如果发现,销毁。

    • 2
  5. davr
    2009-07-14T07:37:10+08:002009-07-14T07:37:10+08:00

    您确定您正在扫描正确的 IP 吗?netstat 显示端口 225 和 22,nmap 显示 21 和 22 ...要么您扫描了错误的 IP,要么您正在扫描错误的 IP,或者您的服务器上可能有一些 iptables 规则重新路由数据包。我会说检查'iptables -L -n'以确保那里没有与FTP相关的内容。

    • 2
  6. hdanniel
    2009-07-14T07:25:52+08:002009-07-14T07:25:52+08:00

    你做的外部nmap是对服务器的IP地址吗?也许正在通过防火墙或路由器。从 localhost 执行 nmap 会发生什么?

    • 1
  7. Saurabh Barjatiya
    2009-07-14T07:41:49+08:002009-07-14T07:41:49+08:00
    1. 检查主机上的防火墙规则

    2. 从不同的主机尝试 nmap 他们都看到端口 21 打开。

    3. 确保您以 root 身份运行所有命令。

    4. 使用交叉电缆连接到您的服务器。在使用交叉电缆连接到服务器的服务器和机器上切换防火墙并再次执行 nmap。

    5. Telnet 从某个主机到端口 21。当消息“Press any key to continue..”出现时不要按键。然后以 root 身份尝试这些命令

      netstat -lp lsof -i :21

    6. 如果仍然没有运气。停止防火墙。在主机上启动一些新服务(比如 httpd),然后再次从不同位置进行端口扫描。你能看到额外的http端口打开吗?

    如果 localhost 看不到在端口 21 上侦听的进程,那么您正在执行 nmap 的主机和服务器之间存在某些东西。这就是为什么第 4 点是关于将主机与 nmap 和服务器直接连接的原因。

    • 0
  8. Mike
    2009-07-14T20:31:18+08:002009-07-14T20:31:18+08:00

    您绝对应该检查您的路由器是否没有将任何 21 端口转发到您的服务器,即使您没有运行任何 FTP 服务,如果路由器正在执行其转发工作,NMAP 也会将端口列为开放。

    • 0

相关问题

  • 如何启用与 SQL Server 实例的加密连接?

  • 我应该如何将 debian/xen 机器从 etch 升级到 lenny

  • 从多个位置保护远程服务器/工具访问的最佳方法是什么?

  • 在 SOHO 环境中实施的最佳 VPN 技术是什么?[关闭]

  • 保护新的 Ubuntu 服务器 [关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve