FTP服务器安装与配置

安装vsftpd

yum install  -y  vsftpd  //安装
yum install -y psmisc net-tools systemd-devel libdb-devel perl-DBI   //安装vsftpd虚拟用户配置依赖包
rpm -e vsftpd  //卸载
systemctl start vsftpd   //启动服务(特别注意:配置完毕后在启动服务)
systemctl restart  vsftpd  //重启
systemctl status  vsftpd   //查看状态
systemctl enable vsftpd  //设置开机自动启动
service vsftpd reload    //重新加载配置文件

配置vsftpd.conf

  • 编辑vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
no_anon_password=YES
anon_world_readable_only=YES
ftp_username=ftpuser
anon_root=/data
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
chown_username=ftpuser
xferlog_file=/var/log/xferlog
vsftpd_log_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
#子进程以 nopriv_user 指定的用户身份执行处理匿名登录的用户,而对登录的用户就以用户自己的身份执行。
#nopriv_user=ftpuser
#async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=欢迎登陆到中企聚易开发者测试中心.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd/banned_emails
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
#ls_recurse_enable=YES
#使用ipv4进行监听
listen=YES
#listen_ipv6=YES
allow_writeable_chroot=YES
userlist_enable=YES
userlist_deny=NO
local_root=/data/
tcp_wrappers=YES
use_localtime=YES
one_process_model=NO
max_clients=20
max_per_ip=2
pasv_enable=YES
#如果使用了防火墙或云服务器,需要在防火墙或安全配置中增加此端口
pasv_min_port=30000
pasv_max_port=30999
pasv_promiscuous=YES
listen_port=21
#虚拟账号配置
guest_enable=YES
#账号的权限与匿名账号一致
virtual_use_local_privs=NO
pam_service_name=vsftpd
guest_username=ftpuser
#虚拟账号配置文件存储目录
user_config_dir=/etc/vsftpd/vuser/

创建用户

useradd ftpuser -s /sbin/nologin    //添加用户,并且这个用户没有登陆系统的权限
passwd  ftpuser   //修改密码
chown -R ftpuser:ftpuser /data    //设置上传文件夹目录所有者
chmod -R 755 /data    //指定权限
chmod a-w /data  //去掉写权限

更改PAM验证

vi /etc/pam.d/vsftpd
替换以下内容
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login_user
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/login_user
session    optional     pam_keyinit.so    force revoke
auth       required    pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth       required    pam_shells.so
auth       include    password-auth
account    include    password-auth
session    required     pam_loginuid.so
session    include    password-auth

配置虚拟账号

vi /etc/vsftpd/login_user   //创建虚拟用户配置文件,内容为:一行账号名称 一行密码
vi /etc/vsftpd/ftpusers  //删除root
vi /etc/vsftpd/chroot_list  //新建空文件保存
vi /etc/vsftpd/user_list   //把增加的账号增加到此文件的末尾,这里需要增加root、ftpuser两账号;
db_load -T -t hash -f /etc/vsftpd/login_user /etc/vsftpd/login_user.db  //增加或修改账号或密码 后需要重新加载
mkdir /etc/vsftpd/vuser/  //创建虚拟账号配置文件存储目录
vi /etc/vsftpd/vuser/account   //编辑虚拟账号配置文件
#配置内容,vsftpd主配置文件中已规定虚拟用户权限与匿名用户一致,因此以下针对匿名用户的权限配置即为虚拟用户的权限 
#指定ftp主目录
local_root=/data/www/root
anon_umask=077 
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
#可以通过mount --bind  方法加载接到ftp主目录,此方式可以直接指定一个项目下多个站点(后台、PC、H5、微信等)统一集中管理上传
mount --bind /data/rss/sys8001/webapps/ROOT /data/rss/root/sys
mount --bind /data/rss/www8002/webapps/ROOT /data/rss/root/www
#编辑/etc/fstab文件加入以下映射关系,启动系统时自动加载
/data/rss/sys8001/webapps/ROOT /data/rss/root/sys auto bind 0 0

常见问题

1、上传提示不能创建目录或上传失败
检查目录所有者是不是:ftpuser,如果不是,请设置

要安装和配置FTP服务器,您可以按照以下步骤进行操作: 1. 选择FTP服务器软件:常见的FTP服务器软件有vsftpd、ProFTPD和Pure-FTPd等。根据您的需求选择适合您的服务器软件。 2. 安装FTP服务器软件:根据您选择的软件不同,可以使用包管理器(如apt、yum等)或从官方网站下载安装包进行安装。例如,在Ubuntu上使用apt安装vsftpd可以执行以下命令: ``` sudo apt update sudo apt install vsftpd ``` 3. 配置FTP服务器:配置文件位置根据不同的软件而有所不同。通常,配置文件位于`/etc/`目录下。您可以编辑配置文件以进行必要的更改。常见的配置选项包括监听端口、允许匿名访问、用户权限等。 4. 启动FTP服务器:根据您的操作系统和FTP服务器软件,可以使用命令或服务来启动FTP服务器。例如,在Ubuntu上启动vsftpd可以执行以下命令: ``` sudo service vsftpd start ``` 5. 防火墙设置:如果您的系统启用了防火墙,确保允许FTP流量通过相应的端口。默认情况下,FTP服务器使用TCP端口21进行控制连接,并使用TCP端口范围20-21进行数据连接。您可以相应地配置防火墙规则。 6. 用户管理:根据需要,您可以创建FTP用户和设置其权限。可以使用FTP服务器软件提供的命令行工具或管理界面来管理用户。 以上是一个基本的安装和配置FTP服务器的步骤。请注意,具体的步骤可能会因您选择的软件和操作系统而有所不同。在进行安装和配置之前,请确保您对操作系统和相关软件有一定的了解,以便正确地进行设置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值