FTP服务器搭建

众所周知,FTP服务器用来上传和下载文件,采用FTP协议。

首先我们来安装FTP
1.$ yum install vsftpd(vsftpd是众多FTP软件中较为安全的一个)。
2.修改配置文件vsftpd.conf,路径为/etc/vsftpd/vsftpd.conf
如果是ubuntu系统的话,路径为 /etc/vsftpd.conf

以下我针对两种身份进行ftp设定

第一种:针对实体账号设定

1.vi /etc/vsftpd/vsftpd.conf
2.修改配置,最后配置信息如下

anonymous_enable=NO //匿名用户登录
local_enable=YES //实体用户登录
write_enable=YES //是否可以上传文件
local_umask=002 //建立目录(755)和文件(644)权限
userlist_enable=YES //自定义阻挡实体用户访问
userlist_deny=YES //与userlist_enable一起用,起阻拦用户登录用
userlist_file=/etc/vsftpd/uesr_list //该文件默认不存在,需手动建立,内容可复制/etc/vsftpd/ftpusers文件,效果类似
//与服务器相关设置
use_localtime=YES //这个尽量选YES,否则系统用格林威治时间
dirmessage_enable=YES //若目录下有.message会显示该内容
xferlog_enable=YES //启动日志记录,记录于/var/log/xferlog
connect_from_port_20=YES //从20端口进行连接,支持主动连接
xfelog_std_format=YES //支持wuftp日志文件格式。
listen=YES //支持stand alone 方式启动
pam_service_name=vsftpd //支持pam模块管理
tcp_wrappers=YES //支持tcp wrappers防火墙机制
banner_file=/etc/vsftpd/welcome.txt //用户登录提示,需手动建立

#添加针对某些实体用户来chroot的相关设置
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

如果按以上配置需创建chroot_list文件:
$ vi /etc/vsftpd/chroot_list //建立不被chroot的用户帐号列表,即使没有帐号存在,该文件也要存在


3.重启ftp服务器
$ /etc/init.d/vsftpd restart
$ chkconfig vsftpd on //设置开机启动

第二种,针对匿名用户登录
1.创建提供匿名用户下载上传文件的目录
$ mkdir /var/ftp/uploads
$ mkdir /var/ftp/downloads
#如果让用户可以上传下载文件
$ chown ftp /var/ftp/uploads
$ chown ftp /var/ftp/downloads

2.修改vsftpd.conf
$ vi /etc/vsftpd/vsftpd.conf

#与匿名用户相关信息
anonymous_enable=YES
no_anon_password=YES //匿名登录时,是否校验密码
anon_max_rate=1000000 //最大带宽使用为1MB/s
data_connection_timeout=60 //数据流连接timeout为60秒
idle_connection_timeout=600 //匿名用户无操作10分钟后断线
max_clients=50 //最大连接数50
max_per_ip=5 //每个ip最多有5个连接

#让匿名用户可以自己上传下载文件
write_enable=YES
anon_other_write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES

#与实体用户相关信息
local_enable=NO
#与服务器相关信息
use_localtime=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
tcp_wrappers=YES
banner_file=/etc/vsftdp/anon_welcome.txt //需手动建立,提示文件

3.重启服务器
$ /etc/init.d/vsftpd restart

如果以上配置,登录时有报错 500 OOPS:cannot change directory:home/test/
修改SELinux防火墙如下
$ getsebool -a |grep ftp
$ setsebool -P ftp_home_dir=1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值