阅读(2393)

Linux使用pure-ftpd建立匿名ftp的方法

最后一次修改 2018年02月24日

(一)ubuntu14.04下使用pure-ftpd建立匿名ftp访问

1.安装

apt-get install pure-ftpd

2.修改配置

nano /etc/pure-ftpd/conf/NoAnonymous

修改为no

3. 建立匿名用户

# 创建ftp用户
sudo useradd ftp

# 创建ftpgroup用户组 
sudo groupadd ftpgroup

# 将ftp用户加入到ftpgroup组中
sudo usermod -g ftpgroup ftp

# 到/home下建立ftp对应文件夹
cd /home
mkdir ftp

# 修改ftp文件夹的用户及用户组
chown ftp:ftpgroup ftp

4. 重启pure-ftp

service pure-ftpd restart

(二)CentOS 7下使用pure-ftpd建立匿名ftp访问

Pure-FTPd是Linux上的一个开源的FTP服务程序。

下面记录了在CentOS 7上安装配置Pure-FTPd的步骤。

1. 安装epel源:

yum install epel-release

2. 使用yum命令安装Pure-FTPd:

yum install pure-ftpd

3. 配置Pure-FTPd:

位置文件位于/etc/pure-ftpd/pure-ftpd.conf:
编辑:
vim /etc/pure-ftpd/pure-ftpd.conf

注释掉PAMAuthentication yes
# PAMAuthentication yes

修改NoAnonymous 为 no
NoAnonymous no

4. 启动pure-ftpd服务:

systemctl enable pure-ftpd
systemctl start pure-ftpd

5. 重启pure-ftpd

systemctl restart pure-ftpd

6. 防火墙和selinux配置(Firewall And SELinux Configuration)

允许ftp服务和21端口穿越防火墙(Allow the ftp service and port 21 via firewall)。

firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --permanent --add-service=ftp

重启防火墙(Restart firewall):
firewall-cmd --reload

更新selinux(Then, update the SELinux boolean values for FTP service):
setsebool -P ftp_home_dir on

注意:匿名ftp目录是/var/ftp

添加FTP用户:

# pure-pw useradd UserName -u User -g Group -d /path/to/ftp/dir

UserName:FTP用户
系统用户,例如apache或www-data,需要有ftp目录的读写权限。
系统用户组,例如apache或www-data

/path/to/ftp/dir:FTP目录

例如:

# pure-pw useradd ftptest -u apache -g apache -d /var/www/blog/ftp

密码加密保存在/etc/pure-ftpd/pureftpd.passwd

保存Pure-FTPD用户数据库:

# pure-pw mkdb
使添加的用户生效:

# systemctl restart pure-ftpd

现在你可以使用添加的fpt用户和密码连接到FTP服务器。

FTP服务端和客户端的文件传输是未加密的,非常的不安全,尤其是敏感信息。