Image

(最后一次变更: 06.11.2024)

Debian 12 Linux FTP Server (ProFtpd + Apache)

有时当您急需通过 Internet 传输大量数据时会有任务,通常这些是大视频文件,在免费云服务中,通常 1 个文件的大小限制不超过 10 GB ,并且绝对没有时间创建 ftp 服务器。 我们已经创建了一个基于 ProFTPD 的现成的 FTP 服务器配置。 服务器以主动和被动两种模式运行,提供更多连接选项。 此外,为了能够通过浏览器发送指向托管文件的链接,我们设置了 Apache 服务,它查看 ftp 目录的根目录。


预配置的服务器配置可在订购单上获得。

更新包:

apt update -y  
apt upgrade -y

安装服务:

apt install proftpd -y
apt install apache2 -y


运行并配置自动运行:

systemctl start proftpd
systemctl start apache2
systemctl enable proftpd
systemctl enable apache2

让我们检查一下状态:

ss -antpl | grep proftpd


创建一个ftp用户并设置密码:

adduser ftpuser
passwd ftpuser


让我们进行必要的设置:

让我们添加一个指令来将用户锁定在主目录中

/etc/proftpd/proftpd.conf

DefaultRoot ~

将配置添加到文件的最后

/etc/proftpd/proftpd.conf

Include /etc/proftpd/conf.d/

Umask 022
AllowOverwrite on

AllowUser ftpuser
DenyAll


AllowUser ftpuser
DenyAll


重新启动服务以应用设置: 

systemctl restart proftpd

让我们让 apache2 服务查看我们创建的用户的根目录。 如果您需要使用 http 协议共享带有链接的文件,此功能将很有用。 指定新路径 /home/ 而不是旧的 /var/www/:

vi /etc/apache2/apache2.conf 

Options Indexes FollowSymLinks
AllowOverride None
Require all granted

让我们重新启动服务:

systemctl restart apache2

如果需要并且有 SSL 证书,我们将放置 CRT 和 KEY 文件 

chmod 600 /etc/ssl/private/proftpd.key 
chmod 600 /etc/ssl/certs/proftpd.crt

让我们添加一个配置文件: 

/etc/proftpd/proftpd.conf

Include /etc/proftpd/tls.conf

让我们检查配置并将其带到表单中:

/etc/proftpd/tls.conf 

TLSRSACertificateFile /etc/ssl/certs/proftpd.crt
TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key
TLSEngine on
TLSLog /var/log/proftpd/tls.log
TLSProtocol SSLv23
TLSRequired on
TLSOptions NoCertRequest EnableDiags NoSessionReuseRequired
TLSVerifyClient off

让我们重新启动服务:

systemctl restart proftpd

FTP 服务器已准备就绪。

如有必要,您可以通过带有密码的 http 添加文件访问保护,为此,请使用本指南:




暂时没有评论