1、 sudo apt-get install vsftpd
use_localtime=YES #ftp时间和系统同步
listen_port=21 #默认无此行,ftp端口为21,添加listen_port=21把默认端口修改为21,注意:防火墙同时要开启21端口
anonymous_enable=NO #禁止匿名用户
local_enable=YES #设定本地用户可以访问。注意:主要是为虚拟宿主用户,如果该项目设定为NO那么所有虚拟用户将无法访问
write_enable=YES #全局设置,是否容许写入(无论是匿名用户还是本地用户,若要启用上传权限的话,就要开启)
local_umask=022 #设定上传后文件的权限掩码。
anon_upload_enable=NO #禁止匿名用户上传。
anon_mkdir_write_enable=NO #禁止匿名用户建立目录。
dirmessage_enable=YES #设定开启目录标语功能。
xferlog_enable=YES #设定开启日志记录功能。
connect_from_port_20=YES #设定端口20进行数据连接。
chown_uploads=NO #设定禁止上传文件更改宿主。
xferlog_file=/var/log/vsftpd.log #日志保存路径(先创建好文件)
xferlog_std_format=YES #使用标准格式
async_abor_enable=YES #设定支持异步传输功能。
ascii_upload_enable=YES #设定支持ASCII模式的上传功能。
ascii_download_enable=YES #设定支持ASCII模式的下载功能。
ftpd_banner=Welcome to osyunwei.com FTP servers #设定Vsftpd的登陆标语。
chroot_local_user=YES #禁止本地用户登出自己的FTP主目录。
pam_service_name=vsftpd #设定PAM服务下Vsftpd的验证配置文件名。因此,PAM验证将参考/etc/pam.d/下的vsftpd文件配置。
userlist_enable=NO #设为YES的时候,如果一个用户名是在userlist_file参数指定的文件中,那么在要求他们输入密码之前,会直接拒绝他们登陆,这里设置为NO
tcp_wrappers=YES #是否支持tcp_wrappers
idle_session_timeout=300 #超时设置
data_connection_timeout=1 #空闲1秒后服务器断开
#########################################################
以下这些是关于Vsftpd虚拟用户支持的重要配置项目。
默认Vsftpd.conf中不包含这些设定项目,需要自己手动添加配置
#########################################################
guest_enable=YES #设定启用虚拟用户功能。
guest_username=vsftpd #指定虚拟用户的宿主用户(这个是我们后面要新建的用户)
user_config_dir=/etc/vsftpd/vconf #设定虚拟用户个人Vsftp的配置文件存放路径。也就是说,这个被指定的目录里,将存放每个Vsftp虚拟用户个性的配置文件,一个需要注意的地方就是这些配置文件名必须和虚拟用户名相同
virtual_use_local_privs=YES #当该参数激活(YES)时,虚拟用户使用与本地用户相同的权限,当此参数关闭(NO)时,虚拟用户使用与匿名用户相同的权限。默认情况下此参数是关闭的(NO)。
pasv_min_port=9000 #设置被动模式的端口范围
pasv_max_port=9045 #设置被动模式的端口范围
accept_timeout=5 #保持5秒
connect_timeout=1 #1秒后重新连接
debian使用FTP详细配置教程_phubing-CSDN博客_debian ftp
在本教程中,我们将向您展示如何在Debian 10上安装FTP Server。
步骤1.在安装任何软件之前,重要的是通过apt在终端中运行以下命令来确保系统是最新的:
sudo apt update
步骤2.在Debian系统上安装FTP服务器。
vsftpd软件包可在Debian仓库中找到。首先,更新包列表并安装vsftpd守护程序:
sudo apt install vsftpd
安装完成后,可以在终端中运行以下命令来检查vsftpd软件包的版本:
sudo systemctl status vsftpd
步骤3.配置FTP服务器。
现在,我们将执行在Debian OS中设置FTP服务器所需的一些配置:
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
sudo nano /etc/vsftpd.conf
使用这些值添加/修改以下选项:
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
pasv_enable=Yes
pasv_min_port=10000
pasv_max_port=10100
allow_writeable_chroot=YES
保存配置文件后,重新启动vsftpd以应用新更改:
sudo systemctl restart vsftpd
步骤4.配置防火墙。
要打开端口21(FTP命令端口),端口20(FTP数据端口)和30000-31000(被动端口范围),请运行以下命令:
sudo ufw allow 20:21/tcp
sudo ufw allow 30000:31000/tcp
通过禁用和重新启用UFW重新加载UFW规则:
sudo ufw disable
sudo ufw enable
步骤5.创建FTP用户。
现在,我们将创建一个用于登录FTP的新用户。在此示例中,我们将创建一个名为chedelics的新用户:
$ sudo useradd -m chedelics
$ sudo passwd radiks
New password:
Retype new password:
passwd: password updated successfully
为了验证一切正常,您应该在chedelics的主目录中至少存储一个文件。在下一步中登录FTP时,该文件应该可见:
sudo bash -c "echo FTP TESTING > /home/ftpuser/FTP-TEST"
步骤6.在Debian 10上测试FTP服务器。
要测试FTP连接,您需要将FTP客户端安装在与访问FTP服务器所在的系统相同或单独的系统中。在我们的例子中,我们使用FileZilla作为FTP客户端。
2、如果客户端出现可以登录,列不出目录,可以修改传输模式来试试
3、云服务器需要配置出入站规则