FTP服务器配置
一、FTP服务器:
FTP服务使用FTP协议来进行文件的上传和下载,可以非常方便的进行远距离的文件传输,并可以实现相应的安全控制。
FTP和NFS、Samba :三大文件服务器
主动模式:消息端口21,数据端口20
被动模式:消息端口21,数据端口 随机
最常用的FTP服务器架设使用vsftpd软件 :安全“ very secure”
二、vsftpd服务简介
软件:vsftpd
服务名:vsftpd
配置文件:/etc/vsftpd/vsftpd.conf
非常注重语法
一、致命(服务无法启动)
1.指令中有空格(行首,等号两边,行尾后面等位置)
2.语法错误 eg:max_clients=150误写成max_client=150
红帽最大并发量15000,但是推荐不要过大
二、残疾(可以访问,功能残缺)
在增加某条参数前先搜索,将已有的参数解注释
用户的类型:
匿名用户:默认权限:可下载,不可上传
本地用户:默认权限:可下载,可上传(前提修改SELinux设置)
虚拟用户:默认不启用
三、FTP服务器的配置
1、安装vsftpd软件
2、开启vsftpd服务
设置vsftpd开机自启动
3、关闭防火墙
4、设置SELinux
方法一:设置SELinux为警告模式
setenforce 临时设置SELinux为警告模式
getenforce 获取当前SELinux的状态(警告:permissive)
或者
/etc/selinux/config 文件中永久修改SELinux
SELinux=disabled
方法二:更改SELinu中关于ftp的选项
getsebool -a |grep ftp 查询SELinux中关于ftp的设置
setsebool -P ftpd_home_dir on 允许本地用户访问家目录
setsebool -P allow_ftpd_anon_write on 开放匿名用户写入权限
setsebool -P allow_ftpd_full_access on 开放全部权限(关乎匿名用户上传等)
5、测试
1.Linux下最经典的ftp客户端软件:lftp
2.浏览器访问ftp://......
3.Windows资源管理器
4.Windows命令提示符
get 文件 指定路径 :下载
put 文件 指定路径 :上传
mget/mput多文件下载/上传
不指定路径默认上传下载的路径C:\Documents and Settings\Administrator
四、vsftpd服务主要参数
主配置文件:/etc/vsftpd/vsftpd.conf
anonynous_enable=YES 匿名登录
local_enable=YES 本地用户登录
write_enable=YES 本地用户写入
Download_enable=YES 下载
anon_root=/var/ftp/pub 匿名用户登录默认目录
local_umask=022 默认的umask,决定上传后文件的权限
chroot_local_user=YES 锁定所有的本地用户的主目录
chroot_list_enable=YES 启用chroot_list功能
chroot_list_file=/etc/vsftpd/chroot_list 启用chroot的用户列表文件
anon_upload_enable=YES 启用匿名用户上传文件的功能(文件夹不成)
anon_world_readable_only=NO 开放匿名用户的浏览权限
anon_mkdir_write_enable=YES 开放匿名用户写和创建目录的权限
anon_other_write_enable=YES 开放匿名用户修改、删除的权限(管理员权限)
pam_service_name=vsftpd 登录时的验证模块
ftpd_banner=welcome 欢迎信息
idle_session_timeout=600 连接超时设置,空闲会话时间
max_clients=100 设置最大的客户机连接
local_max_rate=50000 对本地(系统)用户限速
anon_max_rate=10000 对匿名用户限速
max_per_ip=5 设置每个IP最大的连接数(线程数)
注意:
开放匿名用户上传需满足两个条件:
(1)anon_upload_enable=YES 启用匿名用户上传文件的功能
(2)所在文件夹要有写入权限 例如:chmod o+w /pub/
匿名用户家目录/var/ftp权限是755,这个权限是不能改变的。
修改配置文件后,重启服务生效
练习更改以上参数,设置不同场合应用下的权限