RedHat 7.0 下 FTP 服务的安装,启动,配置,以及虚拟用户的建立
(注意! 区分shell命令和往配置文件里加的代码不同)
一:ftp服务的安装,启动和启用。
1:vim /etc/sysconfig/selinux 改为disabled后重启 :需要先关闭selinux加强防火墙。
2:yum install vsftpd lftp -y systemctl start vsftpd :安装服务并且启动服务。
3:firewall-cmd --list-all 可以查看开启的服务,有ssh。 再firewall-config 开启ftp,最好开永久的。
4:cd /var/ftp :默认的匿名用户访问目录。 编辑文件之后,在火狐浏览器里:ftp://172.25.254.xx 就可以访问到了。
2:ftp的各种功能: (配置文件:/etc/vsftpd/vsftpd.conf)
1:限制登陆:anonymous_enable=YES/NO 限制匿名用户是否可以登陆。 local_enable=YES/NO 限制本地用户是否可以登陆。
2:write_ enable=YES/NO YES:本地用户可以上传,并且可以写,登陆本地用户实际登陆地址是用户的家目录。 NO:相反。
3:anon_upload_enable=YES YES:匿名用户可以上传,上传到/var/ftp中的建立目录中,但是必须给足目录权限,不能通过改ftp的权限而实现匿名用户直接在ftp中上传文件,因为权限太大会使登陆不上。
4:在配置文件中加入:anon_world_readable_only=NO 表示不仅仅可以读,而且本地用户和匿名用户都可以下载。
5:取消注释:anon_mkdir_write_enable=YES 表示匿名用户可以在/var/ftp中建立目录中再建立目录。本地用户能否建立看家目录的权限。
6:在配置文件中加入:anon_other_write_enable=YES 表示匿名用户可以在/var/ftp中建立目录中删除目录。本地用户与此无关。
7:在配置文件中加入:anon_umask=022 表示匿名用户在/var/ftp中建立的目录权限为755,上传的文件权限为644(匿名用户默认建立的目录权限为700,文件权限为600);本地用户默认建立的目录权限为755,上传的文件权限为644。
8:取消注释 chown_uploads=YES
chown_username=student 匿名用户默认上传身份是ftp用户,可以修改为系统已经存在的用户,例如student
9:在配置文件中加入:anon_root=/xxx 匿名用户默认访问和发布目录是/var/ftp,但可以修改,自己可以在/下建立目录,然后把目录作修改。
10:在配置文件中加入anon_max_rate=102400 单位(KB)
local_max_rate=10240000 限制匿名用户和本地用户的上传速率分别为100K和10M,(这样就可以区分VIP用户)
11:本地用户登陆黑白名单:
黑名单:vim /etc/vsftpd/ftpusers 在其中加入本地用户后此用户就登不上了。
白名单:在配置文件中加入userlist_deny=NO 启动白名单服务。 vim /etc/vsftpd/user_list 只有加入其中的本地用户才可以登陆。
注意:黑名单的优先级比白名单高,同时加入黑名单和白名单的用户会登不上。
12:默认情况下,以本地用户登陆的用户可以切到我的根目录,但这样不安全。因此,必须作出限制,禁止有些用户进入我的根目录。(有两种方式)但都必须去掉本地用户家目录U的W权限。
1:全部禁止: 取消注释 chroot_local_user=YES 所有以本地用户登陆的都不能切到根目录。
2:制作白名单:取消注释 chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list
vim /etc/vsftpd/chroot_list 加入哪个本地用户,就可以切到根。
黑名单改第一个YES为NO即可。
3:对于以上有关ftp的操作,无论是以匿名用户还是以本地用户登陆,都会实实在在的登陆到你的系统里,这样本身就是不安全的,因此,在真正的企业中,为了安全,ftp用户都会被做成虚拟用户,然后统一管理,这就大大增加了系统本身的安全性。下面我们一步一步来了解。
1:创建虚拟用户:vim /etc/vsftpd/users 内容:1:user1 2:123 3:user2 4:123 (1234表示行数,用户为user1 and user2 ,密码都为123)
2:对于users进行加密: db_load -T -t hash -f users login.db 加密后的文件为login.db,原来的users为了安全就可以删掉了。
3:vim /etc/pam.d/westos 建立联系 内容:auth required pam_userdb.so db=/etc/vsftpd/login 本地用户的登陆
account required pam_userdb.so db=/etc/vsftpd/login 匿名登陆
4:在配置文件中加入 pam_service_name=westos
guest_enable=YES
guest_username=ftp
可以登陆了 lftp 172.25.254.xxx -u user1/user2 但是user1和user2 都登陆的是/var/ftp 没有自己的环境,不方便,需要建立出属于自己的环境。
5:mkdir /var/ftpdir 建立目录; 在ftpdir中建立user1和user2目录,分别在user1和user2中建立file1和file2.
6:在配置文件中加入 local_root=/var/ftpdir/$USER
user_sub_token=$USER
7:这样分别进入user1和user2之后,看到的就是file1和file2了。
但是如果user1和user2中有想成为VIP的,也可以分别对网络用户限速。
8:cd /var/ftpdir 在user1和user2下再分别建立pub,给足权限。
在配置文件中加入 user_config_dir=/etc/vsftpd/confdir
mkdir /etc/vsftpd/confdir ; vim user1 写入:anon_max_rate=1024000 注意:建立目录confdir后,如果想对user1限速,编辑的文件名要和虚拟用户匹配。
这样就限制user1的上传速度为1M左右。注意和匿名用户与本地用户限速的比较。
OK,大概就是这些东西了,以往学linux的时候做的东西。
阅读(2) | 评论(0) | 转发(0) |
版权声明:本文为博主原创文章,未经博主允许不得转载。
RedHat 7.0 下 FTP 服务的安装,启动,配置,以及虚拟用户的建立的更多相关文章
- CentOS 6.5 下Nginx服务的安装与配置
参考网站: http://www.cnblogs.com/zhuhongbao/archive/2013/06/04/3118061.html http://www.cnblogs.com/jilia ...
- centos6.5下vsftpd服务的安装及配置并通过pam认证实现虚拟用户文件共享
FTP的全称是File Transfer Protocol(文件传输协议),就是专门用来传输文件的协议.它工作在OSI模型的第七层,即是应用层,使用TCP传输而不是UDP.这样FTP客户端和服务器建立 ...
- 关于linux - Centos 7 下DHCP服务的安装与配置
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应商自动分配IP ...
- linux系统下FTP服务器的安装和配置
FTP是File Transfer Protocol(文件传输协议),就是专门用来传输文件的协议.简单地说,支持FTP协议的服务器就是FTP服务器. PORT模式: 首先客户端开启一个非特权端口N(大 ...
- Linux下TFTP服务的安装、配置和操作
TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现.嵌入式linux的tftp开发环境包括两个方面:一是linux服务器端的tftp-server支持,二是嵌入式目标系统的tftp ...
- linux-Centos 7下tftp-server服务的安装与配置
TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间 进行简单文件传输的协议,提供不复杂.开销不大的文件传输服 ...
- CentOS6.5 下Haproxy服务的安装与配置
参考网站: http://wenku.baidu.com/link?url=57AsCAL8TIv8NC3Vdnpd0hQ4fGNls8RFikjRWna3OaZb6qGHYTdV-4_wQPuzv8 ...
- Linux学习总结(21)——CentOS7环境下FTP服务器的安装和配置
1. 安装vsftpd #安装vsftpd yum install -y vsftpd #设置开机启动 systemctl enable vsftpd.service # 重启 service vsf ...
- ubuntu16.04下ftp服务器的安装与配置
由于要将本地程序上传至云服务器中,所以需要给云服务器端安装ftp服务器.记录一下ftp的安装过程,以便以后使用.服务器端所用系统为Ubuntu16.04. 1. 安装ftp服务器, apt-get i ...
随机推荐
- I/O流中的字节流
今天总结一下Java中重要的知识点I/O流,今天主要学习了字节流(自己的理解) 什么是I/O:我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input和输出ou ...
- MySQL 基础入门笔记
目前我们已知的保存数据的容器有: 内存:( 数组,集合) 硬盘:(文件) 将数据从硬盘读取到内存始终是一个性能上的瓶颈 DB : 数据库 ( 保存一系列有组织的数据容器) DBMS: 数 ...
- 痞子衡嵌入式:MCUBootUtility v3.4发布,支持串行NAND
-- 痞子衡维护的 NXP-MCUBootUtility 工具距离上一个大版本(v3.3.0)发布过去 4 个多月了,这一次痞子衡为大家带来了版本升级 v3.4.0,这个版本主要有几个非常重要的更新需 ...
- P4783-[模板]矩阵求逆
正题 题目链接:https://www.luogu.com.cn/problem/P4783 题目大意 给出一个矩阵,求它的逆矩阵. \(1\leq n\leq 400\) 解题思路 记给出矩阵\(P ...
- T-SQL——关于表数据的复制插入
目录 0. 复制表中一列插入到另外一列 1. 复制表结构和数据到自动创建的一张新表中--select into 2. 复制表中一些字段值插入到另外一张表中--insert into 3. 将存储过过程 ...
- Java 集合基础入门,看这篇就够了
集合 1.父接口:Collection java.util.Collection 是进行单对象保存的最大父接口,即每次利用 Collection 接口都只能保存一个对象信息.定义如下: public ...
- 14-Java锁的概述
14-锁的概述 乐观锁与悲观锁 乐观锁与悲观锁是数据库中引入的名词,但是在并发包里也引入了类似的思想,在这里我们还是有必要需要了解一下. 悲观锁指数据被外界修改持保守态度,认为数据会很容易被其 ...
- [Linux]Ansible自动化运维② - 工具与模块
目录 一.Ansible的工具 1.1 Ansible的工作前提 1.2 Ansible的安装文件 1.3 Ansible的配置文件 1.4 Ansible的相关工具 1.4.1 [帮助工具]Ansi ...
- NLP与深度学习(六)BERT模型的使用
1. 预训练的BERT模型 从头开始训练一个BERT模型是一个成本非常高的工作,所以现在一般是直接去下载已经预训练好的BERT模型.结合迁移学习,实现所要完成的NLP任务.谷歌在github上已经开放 ...
- DCI架构是如何解决DDD战术建模缺点的?
摘要:将DCI架构总结成一句话就是:领域对象(Object)在不同的场景(Context)中扮演(Cast)不同的角色(Role),角色之间通过交互(Interactive)来完成具体的业务逻辑. 本 ...