【Linux】FTP服务器配置

FTP服务器配置

一、实验环境:

一台安装了centos7的虚拟机(ftp服务器)、一台安装了windows系统/centos系统的机器(客户端),保持联通。本实验示例采用vmnet8的方式搭建拓扑。

二、实验配置步骤:

1、安装并开启ftp服务

#yum install –y vsftpd     -----在线安装

#rpm –qa | grep vsftpd   -----检测是否安装成功

#systemctl start vsftpd   -----开启ftp服务器

#systemctl stop vsftpd   -----停止ftp服务

#systemctl restart vsftpd   -----重启ftp服务

vsftpd.conf文件备份

mv vsftpd.conf vsftpd.conf.bak

文件过滤掉注释并重新写入

cat vsftpd.conf.bak | grep -v '#' > vsftpd.conf

  

关闭防火墙 systemctl stop firewalld

关闭selinux: setenforce 0

或vi /etc/selinux/config  enforcing=disabled

2、匿名用户访问ftp服务器

### 如何在Linux系统上配置FTP服务器 要在Linux系统上配置一个FTP服务器,可以使用vsftpd(very secure FTP daemon),这是一个安全性高、功能强大的FTP服务器软件。以下内容详细描述了如何安装、配置和管理vsftpd服务。 #### 1. 安装vsftpd 在CentOS或RHEL系统中,可以通过yum包管理器来安装vsftpd: ```bash yum install vsftpd -y ``` 确保系统已连接到互联网以完成软件包的下载和安装[^2]。 #### 2. 启动并设置开机自启 安装完成后,需要启动vsftpd服务,并将其设置为开机自启: ```bash systemctl start vsftpd.service systemctl enable vsftpd.service ``` 可以检查服务状态以确认其是否正常运行: ```bash systemctl status vsftpd.service ``` 如果需要停止或重启服务,可以使用以下命令: ```bash systemctl stop vsftpd.service systemctl restart vsftpd.service ``` #### 3. 配置防火墙 为了允许外部客户端访问FTP服务器,需要在防火墙中开放相应的端口(默认为21)。对于firewalld,执行以下命令: ```bash firewall-cmd --permanent --add-service=ftp firewall-cmd --reload ``` 这将永久性地允许FTP流量通过防火墙[^3]。 #### 4. 修改主配置文件 vsftpd的主要配置文件位于`/etc/vsftpd/vsftpd.conf`。可以根据需求调整以下参数: - `anonymous_enable=NO`:禁用匿名访问。 - `local_enable=YES`:允许本地用户登录。 - `write_enable=YES`:允许上传文件。 - `chroot_local_user=YES`:限制用户只能访问其主目录[^1]。 编辑配置文件后,记得重启vsftpd服务以使更改生效: ```bash systemctl restart vsftpd.service ``` #### 5. 创建虚拟用户(可选) 如果需要创建虚拟用户以增强安全性,可以参考以下步骤: 1. 安装PAM支持模块: ```bash yum install db4 db4-utils -y ``` 2. 编辑`/etc/vsftpd/vsftpd.conf`,启用虚拟用户支持: ```bash guest_enable=YES virtual_use_local_privs=YES pam_service_name=vsftpd.virtual ``` 3. 创建虚拟用户数据库文件并生成哈希文件: ```bash touch /etc/vsftpd/virtual_users.txt # 添加用户名和密码,每行一个 db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db chmod 600 /etc/vsftpd/virtual_users.db ``` 4. 配置PAM认证文件`/etc/pam.d/vsftpd.virtual`: ```bash auth required pam_userdb.so db=/etc/vsftpd/virtual_users account required pam_userdb.so db=/etc/vsftpd/virtual_users ``` #### 6. 测试FTP服务器 从客户端测试FTP服务器是否正常工作。可以使用命令行工具如`ftp`或图形化客户端如FileZilla进行连接测试。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值