一、目的,新建一个用户 test2,登录ftp,它只有自己的主目录权限,其他同级和上级目录没有权限

二、ftp安装、配置

yum -y install vsftpd  //通过yum来安装vsftpd
chkconfig vsftpd on //设置为开机启动
vi /etc/vsftpd/vsftpd.conf #设置配置文件

配置:
anonymous_enable=YES    #设置是否允许匿名用户登录 
local_enable=YES        #设置是否允许本地用户登录 
local_root=/home        #设置本地用户的根目录 
write_enable=YES        #是否允许用户有写权限 
local_umask=022        #设置本地用户创建文件时的umask值 
anon_upload_enable=YES    #设置是否允许匿名用户上传文件 
anon_other_write_enable=YES    #设置匿名用户是否有修改的权限 
anon_world_readable_only=YES    #当为YES时,文件的其他人必须有读的权限才允许匿名用户下载,单单所有人为ftp且有读权限是无法下载的,必须其他人也有读权限,才允许下载 
download_enbale=YES    #是否允许下载 
chown_upload=YES        #设置匿名用户上传文件后修改文件的所有者 
chown_username=ftpuser    #与上面选项连用,表示修改后的所有者为ftpuser 
ascii_upload_enable=YES    #设置是否允许使用ASCII模式上传文件 
ascii_download_enable=YES    #设置是否允许用ASCII模式下载文件

chroot_local_user=YES        #设置是否锁定本地用户在自己的主目录中(将前面#去掉!其他选项可不动
chroot_list_enable=YES        #设置是否将用户锁定在自己的主目录中 
chroot_list_file=/etc/vsftpd/chroot_list    #定义哪些用户将会锁定在自己的主目录中 (去/etc/vsftpd/chroot_list文件增加用户名,一行一个
userlist_enable=YES    #当为YES时表示由userlist_file文件中指定的用户才能登录ftp服务器 
userlist_file=/etc/vsftpd/user_list    #当userlist_enable为YES时才生效

开始添加目标用户,并为其设置主目录

useradd -d 目录 -m 目录 用户    //-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。

passwd 用户名   //设置密码

chmod 755 目录    //以root的视角去修改当前目录的权限

chown -R ftp用户名:组名 目录  //组名可不写,修改目录所属者

>>service vsftpd restart    //重启ftp

配置完成,设置防火墙 :

vi /etc/sysconfig/iptables-config

修改
IPTABLES_MODULES="ip_conntrack_ftp"

开放21端口:

vi /etc/sysconfig/iptables

添加
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

重启  service vsftpd restart

如果此时还不能上传文件权限,关闭SELinux:

> vi /etc/sysconfig/selinux ,修改为:SELINUX=disabled

最终效果:(用户根本都看不到其他目录,只能看到自己的 -d 目录)

 

【linux】FTP添加用户,设置权限和目录的更多相关文章

  1. linux ftp 添加用户及权限管理

    Linux下创建用户是很easy的事情了,只不过不经常去做这些操作,时间久了就容易忘记,顺便配置一下FTP.声明:使用Linux版本release 5.6,并以超级管理员root身份运行. 1.创建用 ...

  2. linux 搭建ftp服务并设置限制访问目录

    服务器有好几个项目,新项目前端外包,因为要微信授权登陆,所以前端没有办法本地调试,必须上次ftp在我们服务器上调试代码,当然要限制ftp访问的目录,否则整个服务器项目都能看到了. 安装vsftpd s ...

  3. linux下添加用户到sudo组 并禁止sudo用户修改密码

    linux下添加用户到sudo组 创建用户  useradd hanli 为新用户设置密码  passwd hanli 创建用户组  groupadd  op 将用户添加到用户组  usermod - ...

  4. OA之为用户设置角色和为用户设置权限

    1.为用户设置角色 { Layout = null; } @using OA.Model <!DOCTYPE html> <html> <head> <met ...

  5. linux下添加用户并将文件夹授权给某一个用户

    ### linux下添加用户并将文件夹授权给某一个用户 背景:在做一个项目时,需要外包的前端人员调试测试环境的页面,但是又不能给他服务器的账号信息,就在服务器上新添加一个子账户,再给这个账户项目文件的 ...

  6. linux开启FTP以及添加用户配置权限,只允许访问自身目录,不能跳转根目录

    1.切换到root用户 2.查看是否安装vsftp,我这个是已经安装的. [root@localhost vsftpd]# rpm -qa |grep vsftpd vsftpd--.el7_2.x8 ...

  7. 【转发】centos 7开启FTP以及添加用户配置权限,只允许访问自身目录,不能跳转根目录

    1.切换到root用户 2.查看是否安装vsftp,我这个是已经安装的. [root@localhost vsftpd]# rpm -qa |grep vsftpd vsftpd-3.0.2-11.e ...

  8. linux 添加用户、权限

    # useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录). 假 ...

  9. Linux 下添加用户,修改权限

    最近在用虚拟机,安装了centos,现在想新添加一个用户,在网上找了找方法.[原文链接] # useradd –d /usr/sam -m sam 此命令创建了一个用户sam,其中-d和-m选项用来为 ...

随机推荐

  1. Jeeplus框架中问题解决

    1,文件上传后图片显示的问题 (1)问题:在这个组件的文档介绍里面写了这个组件是有预览功能的,但是我没有找到,就自己写了这个小功能. 在框架中下图中,这个文件上传组件只能将文件上传,然后将文件名显示出 ...

  2. [转]最流行的android组件大全

      目录(?)[+] 目录(?)[-] 最流行的android组件大全 UI组件 类库 游戏引擎 Android HTML5应用 最流行的android组件大全 最新更新文档请访问我的网站 Andro ...

  3. 字符串转base64,base64转字符串

    [JavaScript原生提供两个Base64相关方法] btoa():字符串或二进制值转为Base64编码 atob():Base64编码转为原来的编码 备注:利用这两个原生方法,我们来封装一下,标 ...

  4. 以前写SpringMVC的时候,如果需要访问一个页面,必须要写Controller类,然后再写一个方法跳转到页面,感觉好麻烦,其实重写WebMvcConfigurerAdapter中的addViewControllers方法即可达到效果了

    以前写SpringMVC的时候,如果需要访问一个页面,必须要写Controller类,然后再写一个方法跳转到页面,感觉好麻烦,其实重写WebMvcConfigurerAdapter中的addViewC ...

  5. 微信公众平台——获取access_token、expires_in

    微信公众平台——获取access_token.expires_in 在微信公众平台接口开发中,Access Token占据着重要地位,它相当于进入各种接口的邀请,拿到这个钥匙才拥有调用其他各种特殊接口 ...

  6. OpenERP实施记录(12):付款处理

    本文是<OpenERP实施记录>系列文章的一部分. 1. 在前面的文章中,采购订单确认时自动生成了供应商发票,可以在 会计 > 供应商列表 > 供应商发票 查询,状态为&quo ...

  7. node.js&pm2搭建node生产环境

    node.js下载地址https://nodejs.org/en/download/stable/ 下载截图 建议采用稳定编译过的版本,source code稍麻烦,编译过的直接可用,安装超级简单,红 ...

  8. linux下批量添加新用户

    作为一个系统管理员,可能要经常的为机器添加用户,可能是在一台机器上添加很多用户,也有可能是在很多机器上要添加同一个用户. 基本上,批量添加用户有两种方式,一是用useradd + passwd命令配合 ...

  9. Unity3d通用工具类之数据配置加载类

    今天,我们来讲讲游戏中的数据配置加载. 什么是游戏数据加载呢?一般来说游戏中会有场景地图. 按照国际惯例,先贴一张游戏场景的地图: 在这张地图上,我们可以看到有很多正六边形,正六边形上有树木.岩石等. ...

  10. python的单元测试框架

    1.unittest是Python内置的标准类库.它的API跟Java的JUnit..net的NUnit,C++的CppUnit很相似.   通过继承unittest.TestCase来创建一个测试用 ...