vsftpd添加用户并限制目录及指定用户访问指定目录

开发那边更新速度如果比较快,每天会有无数的文件或者目录交给运维更新上线,这样比较麻烦,干脆给他们搭FTP让他们自己上传修改,但有一问题,就是权限问题,公司五个站点有五个目录,每个人负责不同的站点,如何让各自都不干扰别人,或者说不到别人的目录搞“破坏”!下面解决这个问题!

一。检查Linux中vsftpd的安装情况。

就不啰嗦了

二。将系统中的SELinux关闭,然后重新启动电脑(不关闭的话修改好标签也可以)

关闭SELinux的方法:

修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启。

如果不想重启系统,使用命令setenforce 0

注:

setenforce 1 设置SELinux 成为enforcing模式

setenforce 0 设置SELinux 成为permissive模式

在lilo或者grub的启动参数中增加:selinux=0,也可以关闭selinux

setsebool ftpd_disable_trans 1

三。建立用户和指定目录

注意:若要为目录制定相应的权限,最好在指定ftp家目录之前修改

然后将vsftpd.conf配置文件里的local_umask的值修改为000就可以了,生成目录默认777,文件默认666

#useradd -d /var/www -s /sbin/nologin ftp3

#passwd ftp3

建立用户ftp3,并指定其家目录为/var/www,禁止登陆

#useradd -d /var/web -s /sbin/nologin ftp4

#passwd ftp4

建立用户ftp4,并指定其家目录为/var/web,禁止登陆

这样ftp3和ftp4用户就被指定到相应的文件夹下。

四。修改vsftpd.conf配置文件

将anonymous_enable改为NO,阻止匿名上传

将chroot_list_enable和chroot_list_file的注释去掉,阻止用户访问上级目录

五。在/etc/vsftpd下建立chroot_list文件

建立完成后,在其中添加用户ftp3,ftp4,(一行一个)使其只允许访问指定目录。

六。启动或是重启ftp服务。

#service vsftpd restart(start)

启动成功后,就可以访问ftp服务了。

下面附vsftpd.conf的一些配置

1. 匿名服务器的连接(独立的服务器)

在/etc/vsftpd/vsftpd.conf配置文件中添加如下几项:

Anonymous_enable=yes (允许匿名登陆)

Dirmessage_enable=yes (切换目录时,显示目录下.message的内容)

Local_umask=022 (FTP上本地的文件权限,默认是077)

Connect_form_port_20=yes (启用FTP数据端口的数据连接)*

Xferlog_enable=yes (激活上传和下传的日志)

Xferlog_std_format=yes (使用标准的日志格式)

Ftpd_banner=XXXXX (欢迎信息)

Pam_service_name=vsftpd (验证方式)*

Listen=yes (独立的VSFTPD服务器)*

功能:只能连接FTP服务器,不能上传和下传

注:其中所有和日志欢迎信息相关连的都是可选项,打了星号的无论什么帐户都要添加,是属于FTP的基本选项

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Servers/Ftp/

时间: 2024-12-21 12:01:34

vsftpd添加用户并限制目录及指定用户访问指定目录的相关文章

WINDOWS 2003 防火墙设置 只允许 指定IP 访问指定端口

前不久在阿里云买的一个服务器,由于没有设置防火墙,前几天突然提示外地登录,立即关闭了服务器. 第二天修改密码,重新开启不一会又提示在别处登录,当时很是无语啊~~~ 于是就寻找只允许指定IP访问指定端口的方法~~好点的是,终于找到了~哈哈~~ 1.打开控制面板   2.打开防火墙 ,点例外 3.点添加端口   4.输入要控制的端口   5.点更改范围   6.选择自定义列表   7.输入允许访问的IP(格式为:192.168.3.100,192.168.3.101/255.255.255.255)

vsftpd中配置多个虚拟用户访问不同目录FTP服务器

风信网(ithov.com)原创文章:测试vsftpd中多个虚拟用户访问不同目录FTP服务器的功能,是在管理与维护FTP服务器是非常实用的一个技术,对于安全要求比较高的FTP来说,采用虚拟用户访问控制不同目录,能大大的提高FTP服务器系统的安全性,下面我们来详细的说明如何在vsftpd中配置多个虚拟用户访问不同目录FTP服务器的步骤. 本测试环境为:CentOS i686 如果你还没有安装vsftpd,可以使用如下命令进行安装: [root@localhost /]# yum install v

使用 chroot 监狱限制 SSH 用户访问指定目录

将 SSH 用户会话限制访问到特定的目录内,特别是在 web 服务器上,这样做有多个原因,但最显而易见的是为了系统安全.为了锁定 SSH 用户在某个目录,我们可以使用 chroot 机制. 在诸如 Linux 之类的类 Unix 系统中更改 root(chroot)是将特定用户操作与其他 Linux 系统分离的一种手段:使用称为 chrooted 监狱 的新根目录更改当前运行的用户进程及其子进程的明显根目录. 在本教程中,我们将向你展示如何限制 SSH 用户访问 Linux 中指定的目录.注意,

mysql 添加用户,授权,远程登陆,远程导入导出数据库,用户及权限查询,新增用户无法登陆,

首先提示一点,当使用新增用户登陆失败: root@controller:~# mysql -h localhost -ukeystone -ppassword  ERROR 1045 (28000): Access denied for user 'keystone'@'localhost' (using password: YES)解决方法:  增加普通用户后,执行:  mysql> use mysql mysql> delete from user where user=''; mysql

用ASP让用户访问指定页面

一个网站有许多页面,如果用户知道某个页面的链接,可以在浏览器中直接输入url访问它.但这在一个要求有安全性的站点上是不允许的.我们要求用户必须登录以后才能访问各级页面,有时也确实希望用户总是先看到站点的主页.这两种要求可以通过在asp的global.asa中对session对象编程来实现. 1.用户必须从主页开始浏览 如果仅希望用户每次上站都先访问站点主页,可以在session的session_onstart事件中加入response.redirect "url"来实现.例如在glob

oracle-linux环境下,用python怎么取得指定用户的环境变量

问题描述 linux环境下,用python怎么取得指定用户的环境变量 在linux环境下,例如当前用户是root,通过os.environ取到的是当前用户的环境变量. 当时我想去其他用户的环境变量,例如oracle用户,有什么办法? 谢谢 解决方案 这个需要你su先切换用户,然后再获取对应环境变量 解决方案二: 其他用户环境变量直接读配置文件获取得了.对应用户目录下 .bashrc . .bash_profile

请问学生社团管理系统要有至少5个菜单目录,除了用户登录、用户注销、社团通讯录读取

问题描述 请问学生社团管理系统要有至少5个菜单目录,除了用户登录.用户注销.社团通讯录读取 助人为乐的人快出现!请问学生社团管理系统要有至少5个菜单目录,除了用户登录.用户注销.社团通讯录读取,社团通讯录显示.社团通讯录查询以外,还有什么做起来不太难的,快帮我想想! 解决方案 不是已经有5个了么?再随便加上一点什么社团活动,经费管理之类的 解决方案二: 社团人员管理:添加删除成员.或者社团活动显示更改

activedirectory-活动目录在创建用户的时候设置memberof属性

问题描述 活动目录在创建用户的时候设置memberof属性 C++ 创建用户后不知道怎么添加分组 ,memberof属性是要怎么添加的呢 解决方案 求高手帮帮忙丫给点意见吧 解决方案二: 分组那个好像要用到group 请问你添加用户 设置了密码没? 最近在弄个东西 添加用户有密码 不行

Android应用中添加友盟统计及计算新增用户

软硬件环境    Macbook Pro MGX 72    Android Studio 1.3.2    Genymotion模拟器 集成友盟SDK 首先到友盟官网http://www.umeng.com/注册个帐户,完成后到管理后台添加需要集成友盟统计的应用,如下 计算新增用户-友盟统计新增用户"> 提交后,分给你的应用分配key,如下 ps://raw.githubusercontent.com/djstava/Notebook/master/android/umeng/umeng