配置 proftpd.note

noteId: WEBb6a27f0dc3e4d749c511226f65a2e474 · 原始路径:/ALL/Linux - A模块/服务配置/FTP - TCP 21、TCP 990/proftpd/配置 proftpd.note · 图片:20 · 附件待处理:0

 
·需要注意,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 proftpd
 
4、设置 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 配置即是显示加密