linux笔记-ftp
来源:互联网 发布:手机淘宝登陆加载失败 编辑:程序博客网 时间:2024/04/25 20:49
######################
#######vsftpd服务######
######################
1.什么是ftp
FTP 是 TCP/IP 协议组中的协议之一,是英文FileTransfer Protocol的缩写。该协议是Internet文件传送的基础,它由一系列规格说明文档组成,目标是提高文件的共享性,提供非直接使用远程计算机,使存储介质对用户透明和可靠高效地传送数据。简单的说,FTP就是完成两台计算机之间的拷贝,从远程计算机拷贝文件至自己的计算机上,称之为“下载(download)”文件。若将文件从自己计算机中拷贝至远程计算机上,则称之为“上载(upload)”文件。在TCP/IP协议中,FTP标准命令TCP端口号为21,Port方式数据端口为20。
2.安装ftp
yum install vsftpd -y ##安装vsftpd
systemctl start vsftpd ##开启服务
systemctl stop firewalld ##关闭防火强
systemctl enable vsftpd ##开机自动启动
setenforce 0 ##selinux状态为disabled
id ftp ##能登陆并且显示,表示安装成功
# uid=14(ftp) gid=50(ftp) 组=50(ftp)
3.vsftpd文件信息
/var/ftp ##默认发布目录
/etc/vsftpd ##配置目录
4.vsftpd服务的配置参数
说明:配置文件 /etc/vsftpd/vsftpd.conf每次修改后都需要重启vsftpd服务,
如果出现 550 则表示服务不允许(需修改相关配置),553表示文件系统不允许(文件权限问题)或者是selinux的问题,500文件权限过大,530文件权限过小。
1)匿名用户设定
<匿名用户登录>
anonymous_enable=YES|NO ##匿名用户登录限制
<匿名用户上传>
write_enable=YES ##允许登录用户有写权限
anon_upload_enable=YES ##允许匿名用户有上传文件(非目录)的权限
chgrp ftp /var/ftp/pub ##将所属用户组改为ftp
chmod 775 /var/ftp/pub ##权限设为775
<匿名用户家目录修改>
anon_root=/direcotry ##使用匿名用户登录时,所进入的目录,默认/var/rtp。注意:匿名用户的家目录不能有777权限。
<匿名用户上传文件默认权限修改>
anon_umask=xxx ##匿名用户上传文件时的umask值,上传后为 666-xxx
<匿名用户建立目录>
anon_mkdir_write_enable=YES|NO ##匿名用户具有创建目录的权限(YES),默认为(NO)。注意:只有在write_enable=YES时才生效。
<匿名用户下载>
anon_world_readable_only=YES|NO
##如果为yes,则允许匿名用户下载可阅读的文档,默认为yes
<匿名用户删除>
anon_other_write_enable=YES|NO
##默认为NO。如果为YES,匿名用户拥有删除和重命名的权限。注意:如果anon_upload_enable=NO,则匿名仅用户不能上传;如果anon_mkdir_write_enable=NO,则匿名用户不能上传或新建目录。
<匿名用户使用的用户身份修改>
chown_username=username
##上传文件后,文件所属用户发生变化
<最大上传速率>
anon_max_rate=102400
##上传文件的最大速率
<最大链接数>
max_clients=number
##最多同时允许几个人连接
2)本地用户设定
local_enable=YES|NO ##本地用户登陆限制
write_enable=YES|NO ##本地用户写权限限制
<本地用户家目录修改>
local_root=/directory
##和匿名用户效果一致
<本地用户上传文件权限>
local_umask=xxx
##和匿名用户效果一致
<限制本地用户进入上级目录>
chroot_local_user=YES
chmod u-w /home/*
## 若为YES,所有用户被锁定到自己的家目录中,不能进入上级目录。默认为NO
(1) 用户黑名单建立
#名单/etc/vsftpd/chroot_lis里的用户不能进入上级目录
chroot_local_user=NO
chroot_list_enable=YES
#启用chroot_list_file配置项指定的用户列表文件
chroot_list_file=/etc/vsftpd/chroot_list
#用于指定用户列表文件,控制列表里的用户是否能进入家目录的上级目录
(2) 用户白名单建立
#名单/etc/vsftpd/chroot_lis里的用户能进入上级目录
chroot_local_user=YES
chroot_list_enable=YES
#启用chroot_list_file配置项指定的用户列表文件
chroot_list_file=/etc/vsftpd/chroot_list
#用于指定用户列表文件,控制列表里的用户是否能进入家目录的上级目录
<限制本地用户登陆>
vim /etc/vsftpd/ftpusers ##用户黑名单(优先级高)
vim /etc/vsftpd/user_list ##用户临时黑名单
userlist_enable=YES ##启用user_list文件
用户白名单设定
userlist_deny=NO ##双重否定表肯定,只有在/etc/vsftpd/user_list 名单中的用户才能登录
<ftp虚拟用户的设定>
创建虚拟帐号身份)
vim /etc/vsftpd/loginusers ##文件名称任意,奇数行为用户,偶数行为密码
ftpuser1
123
ftpuser2
123
ftpuser3
123
db_load -T -t hash -f /etc/vsftpd/loginusers loginusers.db
vim /etc/pam.d/ckvsftpd ##文件名称任意
account required pam_userdb.so db=/etc/vsftpd/loginusers
auth required pam_userdb.so db=/etc/vsftpd/loginusers
vim /etc/vsftpd/vsftpd.conf
pam_service_name=ckvsftpd ##和/etc/pam.d/ckvsftpd文件名一致
guest_enable=YES ##允许虚拟用户登录
虚拟帐号身份指定)
guest_username=ftpuser
虚拟帐号家目录独立设定)
vim /etc/vsftpd/vsftpd.conf
local_root=/ftpuserhome/$USER ##用户目录
user_sub_token=$USER ##用户配置文件所在目录,可为空
mkdir /ftpuserhome
chgrp ftpuser /ftpuserhome
chmod g+s /ftpuserhome
mkdir /ftpuserhome/ftpuser{1..3}
虚拟帐号配置独立)
vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/userconf
mkdir -p /etc/vsftpd/userconf
vim /etc/vsftpd/userconf/ftpuser1
在此文件中设定配置文件中的所有参数,此文件的优先级搞
###vsftpd 的布尔变量
SELinux 对 FTP 的限制非常严格,不过系统管理员可以利用布尔值变量调整 SELinux 策略设置,定制 FTP 服务器功能。
下面是常用的布尔变量:
allow_ftpd_anon_write :关闭这个布尔变量会阻止 vsftpd 读取 public_content_rw_t 类型的文件和目录。如果允许用户通过 FTP 上传文件。必须开放这个布尔变量。
allow_ftpd_full_access:当开放这个布尔变量时只有 Linux(DAC)的权限来控制访问,通过验证的用户可以读取和写入标记为 public_content_t 或 public_content_rw_t 类型的文件。
allow_ftpd_use_cif:当开放这个布尔变量时 vsftpd 允许 cifs_t 类型的文件和目录,因此这个布尔变量启用,可以让你的 FTP 服务器可以使用 Samba 文件系统。
allow_ftpd_use_nfs vsftpd:的当开放这个布尔变量时 vsftpd 允许 nfs_t 类型的文件和目录,因此这个布尔变量启用,可以让你的 FTP 服务器可以使用 NFS 文件系统。
ftp_home_dir:当开放这个布尔变量时认证用户可以读写自己的主目录中的文件。
ftpd_connect_db:当开放这个布尔变量时允许 vsftpd 连接数据库。
httpd_enable_ftp_server:当开放这个布尔变量时容许的 httpd 作为 FTP 服务器,并且监听 FTP 端口。
tftp_anon_write:当开放这个布尔变量时允许 TFTP 访问一个公共的目录。
- linux笔记-ftp
- Linux学习笔记----FTP使用
- Linux下的ftp客户端使用笔记
- linux下的FTP,SAMBA配置笔记
- linux学习笔记6-FTP服务器
- Linux常用命令笔记-ftp/sed/awk
- Linux学习笔记(四)--ftp文件共享
- Linux小白初次搭建FTP笔记
- linux学习笔记之ftp服务器
- Linux学习笔记(四)--ftp文件共享
- FTP-Linux虚拟服务器配置笔记
- Linux运维笔记----部署FTP服务器
- 【FTP】linux ftp服务
- ftp笔记
- Ftp笔记
- ftp 笔记
- FTP----笔记
- FTP笔记
- Java--Date(日期)和Calendar(日历)类
- 程序的装入和链接过程
- LeetCode-155. Min Stack
- Docker本地images删除问题
- 简单了解下DDOS产业
- linux笔记-ftp
- Spring AOP通知实例 – Advice
- Quartz学习(一)
- HDU-3743 Minimum Sum,划分树模板
- zoj2562 More Divisors && CF27E. Number With The Given Amount Of Divisors(反素数)
- Struts2.3升级到2.5需要注意的事情
- SQL Server 性能优化之——重复索引
- Ubuntu——修改环境变量
- git learning3