如何检查运行中的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

相关推荐

  • Linux如何安装JavaScript运行环境?

    在Linux系统中安装JavaScript并非直接安装语言本身,而是为其搭建运行环境,JavaScript作为一种脚本语言,需要在特定的运行时环境中执行,而目前最主流的JavaScript运行时是Node.js,Linux下“安装JavaScript”通常指安装Node.js及其包管理器npm(Node Pac……

    2025年8月28日
    15100
  • Linux系统如何设置别名?新手必学的全面详细步骤教程指南

    在Linux系统中,别名(Alias)是一个非常有用的功能,它允许用户为常用的命令或命令组合设置简短的自定义名称,从而减少重复输入、提高命令行操作效率,将ls -alF设置为别名ll,后续只需输入ll即可实现相同功能,本文将详细介绍Linux中别名的设置方法、持久化配置、高级用法及注意事项,帮助用户全面掌握别名……

    2025年9月16日
    16800
  • Linux脚本失控?安全终止全攻略

    前台运行脚本的停止方法若脚本在终端前台运行(直接通过./script.sh启动):Ctrl + C 组合键立即发送 SIGINT 信号终止脚本,适用于大多数情况,脚本会执行预设的清理操作后退出,注意:若脚本捕获了该信号(如使用 trap 命令),可能无法立即停止,Ctrl + Z 组合键 → 终止挂起任务按 C……

    2025年6月17日
    22900
  • 如何添加一行将域名指向本地或服务器IP?

    在Linux系统中绑定域名是将域名指向服务器IP地址的关键步骤,确保用户通过域名访问网站,以下是详细操作指南,涵盖主流Web服务器配置和注意事项:绑定域名前的准备工作域名与DNS解析在域名注册商(如阿里云、GoDaddy)后台添加 A记录,将域名指向服务器公网IP(example.com → 192.0.2.1……

    2025年7月7日
    24300
  • PHP是否以PHP-FPM运行?

    在Linux系统中重启PHP服务是常见的运维操作,通常发生在修改PHP配置(如php.ini)或更新扩展后,具体方法取决于PHP的运行模式(PHP-FPM或Apache模块),以下是详细步骤:确认PHP运行模式在操作前,需确定当前PHP的工作方式:# 检查是否作为Apache模块if systemctl sta……

    2025年7月24日
    16900

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信