配置 proftpd.note
·需要注意,proftpd需要能够解析当前主机名,需要在 /etc/hosts 中书写当前主机名的解析(和Squid一样,不写hosts文件就会报错)

一、配置 proftpd(不加密):
1、配置 proftpd服务器(安装即可使用):
(1)安装 proftpd服务:
apt install -y proftpd和 vsftpd一样,默认就支持本地用户登陆(默认拥有读写、切换目录的权限),但是不允许root用户登陆
2、开启匿名用户登陆:
需要手动创建 /srv/ftp 目录
mkdir /srv/ftp //匿名用户默认登陆到这里,在debian 13中,该目录不会自动创建
chmod 755 /srv/ftp
chown -R ftp:ftp /srv/ftp
vim /etc/proftpd/proftpd.conf
# 取消 164 ~ 203 行的注释

# 重启:
systemctl restart proftpd但是此时匿名用户只有读取、列出、下载的权限,没有写入和删除的权限
·测试:
使用 匿名用户 ftp 或 anonymous

2.1、允许匿名用户可写:
chmod 777 /srv/ftp //确保ftp根目录的权限
vim /etc/proftpd/proftpd.conf或者直接将 Directory 这一块注释掉,这样默认就不会进行限制

·测试:


3、允许 root用户登陆:
# 需要两个配置:
vim /etc/ftpusers
vim /etc/proftpd/proftpd.conf
## 添加一行:
# 重启服务:
systemctl restart proftpd4、设置 ftp 根目录:
mkdir /ftp
# 只创建目录,不赋予权限,那么用户就只有读取和下载权限
chmod 777 /ftp //这样用户才能够读写、删除
vim /etc/proftpd/proftpd.conf
# 重启服务:
systemctl restart proftpd·测试:

二、ftp 隐式加密:
默认就能使用 ldap用户进行登陆,只需要安装 nslcd进行连接ldap即可
1、配置 proftpd:
apt install -y proftpd proftpd-mod-crypto注意要安装 crypto 这个软件包,否则 ssl 无法起来
vim /etc/proftpd/proftpd.conf

vim /etc/proftpd/modules.conf
# 取消注释
vim /etc/proftpd/tls.conf
# UseImplicitSSL 需要背,没得抄

systemctl restart proftpd
2、配置用户没有删除文件的权限(vsftpd、proftpd通用):
chmod o+t /htdocs/ftp
vim /root/while.sh
bash while.sh &
# 将该命令写入到 /etc/profile 中,重启也会生效·测试:

·如果 客户端在外网通过nat进行访问就需要配置:

(外网客户端通过nat访问进来会有问题,所以需要配置这个)在 nat 上将 被动端口范围转发给 ftp

三、ftp 显示加密:
与上面隐式加密配置一样,甚至配置更少,只要不将端口改为990,保持默认的21,也不添加 UseImplicitSSL 配置即是显示加密