FTP服务器搭建
参考教程:【千峰教育】
1、关闭防火墙:
service iptables stop
2、关闭Selinux
setenforce 0
3、安装所需要依赖及编译工具
yum install -y gcc openssl-devel perl
4、下载pure-ftpd
(1)搜索pure-ftpd,一般是第一个,打开链接:https://www.pureftpd.org/project/pure-ftpd。
(2)点击页面右侧列表的的【Download】:https://www.pureftpd.org/project/pure-ftpd/download。
(3)点击【Primary HTTP download site】:http://download.pureftpd.org/pub/pure-ftpd/。
(4)在列表中点击发行版【releases/】:https://download.pureftpd.org/pub/pure-ftpd/releases/。
(5)选择其中一个版本,例如【pure-ftpd-1.0.47.tar.gz】,复制下载链接。
(6)在Linux中执行下载命令:
curl -O https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.47.tar.gz
5、解压
tar -zxvf pure-ftpd-1.0.47.tar.gz
6、进行配置
cd pure-ftpd-1.0.47
./configure --prefix=/usr/local/pureftpd --without-inetd --with-altlog --with-puredb --with-throttling -with-tls
7、编译和安装
make && make install
8、修改配置文件
注意:这里好像区分版本,不同版本不太一样:
(1)如果下载的目录里【有configuration-file目录】:
mkdir -p /usr/local/pureftpd/etc
cd ./configuration-file/
cp pure-ftpd.conf /usr/local/pureftp/etc/
(2)如果下载的目录里【没有configuration-file目录】:
可能配置文件已经存在于指定的目录下了。
修改:/usr/local/pureftpd/etc/pure-ftpd.conf
如下:
PureDB /usr/local/pureftpd/etc/pureftpd.pdb
PIDFile /usr/local/pureftpd/var/run/pure-ftpd.pid
9、启动服务
注意:这里好像区分版本,不同版本不太一样:
(1)如果下载的目录里【有configuration-file目录】:
这里目录里会有pure-config.pl控制文件:
cp pure-config.pl /usr/local/pureftpd/sbin/
chmod 755 pure-config.pl
然后启动:
cd /usr/local/pureftpd
./sbin/pure-config.pl ./etc/pure-ftpd.conf
(2)如果下载的目录里【没有configuration-file目录】:
启动:
cd /usr/local/pureftpd
./sbin/pure-ftpd ./etc/pure-ftpd.conf
或者
/usr/local/pureftpd/sbin/pure-ftpd /usr/local/pureftpd/etc/pure-ftpd.conf
10、检查是否启动:
使用netstat命令:
结果看到如下信息,21号端口,pure-ftpd,说明启动了。
tcp 0 0 0.0.0.0:21 0.0.0.0:* LIST EN 22755/pure-ftpd
11、添加管理用户:
useradd ftp-user #在系统中的添加一个用户ftp-user
mkdir -p /var/www/html/
chown -R ftp-user:ftp-user /var/www/html/
./bin/pure-pw useradd zhangsan -u ftp-user -d /var/www/html
说明:
zhangsan 是使用ftp登录时的用户名
-u:指系统中存在的用户ftp-user
-d:指定访问的目录
./bin/pure-pw命令在/usr/local/pureftpd/下。
12、创建虚拟的用户数据库
cd /usr/local/pureftpd/
./bin/pure-pw mkdb
查看:
./bin/pure-pw list
13、测试:
通过ftp工具(FileZilla)测试。
主机:填写虚拟机地址。
端口:21。
协议:FTP-文件传输协议。
加密:只使用普通FTP(不安全)
登录类型:询问密码。
用户:用户名,即示例中设置的zhangsan
扩展知识:
ctrl+u 清空当前输入
ctrl+l 清空屏幕
解压pure-ftpd-1.0.47.tar.gz时提示:
gzip: stdin: unexpected end of file
tar: 归档文件中异常的 EOF
tar: 归档文件中异常的 EOF
tar: Error is not recoverable: exiting now
原因:
源码包在下载过程中被破坏或者不完整所致。
可以看到,下载后的大小和开始下载时显示的总大小是不一样的。
解决方法:
重新下载。
如果服务器的网速较慢,或下载后还是不完整的文件,可以选择在windows上下载后,上传到服务器行。
本地下载curl软件后,在cmd命令行,执行上面的而下载命令:
curl -O https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.47.tar.gz
然后上传。
./configure的那个配置项有时间要具体了解一下,这里不做说明了。