搭建FTP服务器

FTP(File Transfer Protocol)文本传输协议。它使用的是C/S模式,属于OSI七层模型的应用层,基于TCP协议。使用TCP协议的21号端口用来连接,20号端口用来传输数据(tftp是基于UDP协议,使用的是udp 69号端口)。也就是说,在进行FTP文件传输中客户端首先连接到FTP服务器的21号端口进行身份验证,身份验证通过要传输文件时,服务器会打开20号端口进行数据传输。

搭建FTP服务器

1.关闭防火墙和SELinux

systemctl stop firewalld          #关闭防火墙
systemctl disable firewalld       #设置开机不自启防火墙

setenforce 0                 #临时关闭防火墙
vim /etc/selinux/conf        #将SELINUX=enforcing 改为 SELINUX=disabled(此项修改生效需重启)

2.安装vsftp

yum -y install vsftp            #安装vsftp
rpm -qa | grep vsftp            #查看安装的vsftp

 3.服务安装后,开始修改配置文件

在修改配置文件之前一定要将配置文件进行备份(养成这个习惯)。

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak    #备份配置文件
vi /etc/vsftpd/vsftpd.conf        #修改配置文件
打开配置文件后,按esc键进入命令模式输入:
:set number  #显示行号
具体修改如下:
12行 anonymous_enable=NO
33行 anon_mkdir_write_enable=YES
48行 chown_uploads=YES
72行 async_abor_enable=YES
83行 ascii_upload_enable=YES
84行 ascii_download_enable=YES
87行 ftpd_banner=Welcome to blah FTP service.
101行 chroot_local_user=YES
在配置文件的末尾加入以下信息
use_localtime=YES
listen_port=21
idle_session_timeout=300
guest_enable=YES
guest_username=vsftpd
user_config_dir=/etc/vsftpd/vconf
data_connection_timeout=1
virtual_use_local_privs=YES
pasv_min_port=40000
pasv_max_port=40010
accept_timeout=5
connect_timeout=1
allow_writeable_chroot=YES

4.建立用户文件

touch /etc/vsftpd/virtusers     #创建用户文件
vim /etc/vsftpd/virtusers       #编辑用户文件
cat /etc/vsftpd/virtusers       #查看用户文件
zhangshuyun #用户名
123456      #密码

5.生成用户数据文件

cd /etc/vsftpd
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
chmod 600 virtusers.*    #修改文件权限

6.指定认证方式

需要修改/etc/pam.d/vsftpd文件
修改之前先要备份
cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
vi /etc/pam.d/vsftpd
将文件中原有的全都注释
增加下列内容
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers 
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
如果系统是32位的需要将lib64改为lib

创建新用户(要求有家目录但是不能登录)
useradd -s /sbin/nologin vsftpd
chown -R vsftpd:vsftpd /home/vsftpd

7.建立用户个人配置文件

mkdir /etc/vsftpd/vconf                    #创建目录
touch /etc/vsftpd/vconf/zhangshuyun        #创建文件
vim /etc/vsftpd/vconf/zhangshuyun          #编辑文件
cat /etc/vsftpd/vconf/zhangshuyun          #查看文件
local_root=/home/vsftpd/zhangshuyun/
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

mkdir -p /home/vsftpd/zhangshuyun/        #创建用户自己的目录

重启ftp服务,是配置生效
systemctl restart vsftpd                  #重启vsftpd服务
systemctl status vsftpd                   #查看vsftpd服务的状态

8.测试

/home/vsftpd/zhangshuyun/目录下创建123.txt文件,在浏览器的地址栏中输入ftp://<ftp服务器IP地址>

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值