如何检查运行中的FTP进程?

在Linux系统中关闭FTP服务是提升服务器安全性的重要操作,尤其考虑到FTP协议使用明文传输敏感数据(如用户名、密码),存在被嗅探的风险,以下是详细操作指南,涵盖主流Linux发行版(Ubuntu/Debian/CentOS)和常见FTP服务软件(vsftpd/proftpd/pure-ftpd):


确认当前运行的FTP服务

在关闭前需确定系统使用的FTP服务类型:

# 检查已安装的FTP软件包
## Debian/Ubuntu
dpkg --get-selections | grep -E 'vsftpd|proftpd|pure-ftpd'
## CentOS/RHEL
rpm -qa | grep -E 'vsftpd|proftpd|pure-ftpd'

关闭FTP服务(分场景操作)

场景1:使用 systemd 的系统(Ubuntu 16.04+/CentOS 7+)

步骤:

  1. 停止运行中的服务(以 vsftpd 为例):
    sudo systemctl stop vsftpd  # 替换为实际服务名(如proftpd)
  2. 禁止开机自启:
    sudo systemctl disable vsftpd
  3. 验证状态(应显示 inactivedisabled):
    systemctl status vsftpd

场景2:使用 init 的旧系统(CentOS 6/Ubuntu 14.04-)

步骤:

  1. 停止服务:
    sudo service vsftpd stop  # 或 /etc/init.d/vsftpd stop
  2. 移除开机启动:
    sudo chkconfig vsftpd off  # CentOS
    sudo update-rc.d -f vsftpd remove  # Ubuntu/Debian
  3. 检查是否成功:
    service vsftpd status

彻底卸载FTP软件(可选)

若需完全移除FTP服务以释放资源:

# Debian/Ubuntu
sudo apt purge vsftpd proftpd pure-ftpd -y
# CentOS/RHEL
sudo yum remove vsftpd proftpd pure-ftpd -y

验证FTP服务已关闭

  1. 检查端口占用(FTP默认端口21):
    sudo netstat -tuln | grep ':21'

    若无输出则说明端口未监听。

  2. 尝试连接测试
    ftp localhost  # 或使用 telnet 127.0.0.1 21

    应返回连接拒绝(Connection refused)。


安全建议

  1. 替代方案
    使用加密协议替代FTP:

    • SFTP/SCP:基于SSH的文件传输(默认端口22),启用命令 sudo systemctl enable sshd
    • FTPS:FTP over SSL/TLS(需配置证书)。
  2. 防火墙加固
    禁止外部访问FTP端口:

    sudo ufw deny 21/tcp  # Ubuntu
    sudo firewall-cmd --permanent --remove-service=ftp  # CentOS
  3. 定期审计
    使用 ss -tulnnmap localhost 定期检查开放端口。

故障排除

  • 报错 “Unit not found”:说明服务名错误,通过 systemctl list-unit-files | grep ftp 确认正确名称。
  • 端口仍被占用:可能有残留进程,用 sudo killall vsftpd 强制结束。

引用说明:本文操作基于Linux官方文档(systemd、vsftpd)及服务器安全最佳实践,具体命令请以实际环境为准,生产环境操作前建议备份配置。

通过以上步骤,您已有效关闭Linux的FTP服务并提升系统安全性,对于长期运行的服务器,建议迁移至加密传输协议以保障数据安全。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7624.html

(0)
酷番叔酷番叔
上一篇 2025年7月17日 06:11
下一篇 2025年7月17日 06:27

相关推荐

  • 快速检查软件是否安装?轻松搞定!

    为什么需要发送syslog?集中管理:将多台服务器的日志汇总到单一平台(如ELK、Graylog),实时分析:快速检测安全事件(如入侵尝试)或系统错误,合规性:满足GDPR、等保等法规对日志存储的要求,核心概念syslog协议Linux通过syslog守护进程(如rsyslog/syslog-ng)处理日志,支……

    2025年7月17日
    15600
  • Linux管理员如何运行命令行窗口?

    在Linux系统中,命令行窗口(终端)是管理员进行系统管理、配置、故障排查的核心工具,其灵活性和效率远高于图形界面,Linux管理员运行命令行窗口的方式多样,涵盖本地操作、远程访问及高级场景,以下是具体操作方法和注意事项,本地终端窗口的打开方式本地终端窗口指直接在当前Linux系统中启动的命令行界面,根据不同桌……

    2025年9月18日
    10400
  • 在Linux系统中,删除文件和目录是基础但关键的操作。以下是详细指南,涵盖命令行、图形界面及安全实践,确保操作安全高效

    命令行删除(核心方法)删除文件rm 文件名 # 删除单个文件(例: rm report.txt)rm 文件1 文件2 # 批量删除文件rm *.log # 通配符删除所有.log后缀文件关键选项:-i:交互确认(推荐新手)rm -i important.txt # 删除前提示确认-f:强制删除(忽略错误提示)r……

    2025年8月7日
    11100
  • Linux中如何打开ICC2工具?操作步骤与方法详解

    在Linux系统中,“打开icc2”通常指的是使用Intel oneAPI DPC++/C++ Compiler(简称icc2),这是Intel推出的高性能编译器,支持C++、DPC++(SYCL)等语言,常用于高性能计算、并行程序开发等领域,要正确“打开”(即安装并启用)icc2,需完成系统准备、安装、环境配……

    2025年9月21日
    1.3K00
  • Linux如何查看已挂载U盘?

    命令行方法(推荐)lsblk 命令(最直观) lsblk -f作用:以树状结构列出所有块设备(硬盘、U盘、分区)的详细信息,输出关键字段:NAME:设备名称(如 sdb1),FSTYPE:文件系统类型(如 vfat、ntfs),MOUNTPOINT:挂载路径(如 /media/user/USB),操作示例……

    2025年7月16日
    15200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信