用户黑白名单

一个Linux主机中会多个用户,而我们希望有些用户不能去访问ftp。ftp服务器可以通过配置文件“/etc/vsftpd/user_list”来设置一个用户列表,这个列表可以是黑名单,也可以是白名单,具体要根据配置文件的参数“userlist_deny”来确定

1、黑名单

1)修改配置文件“/etc/vsftpd/vsftpd.conf”中的参数“userlist_enable”,确保这个参数是yes

[root@localhost wj]# gedit /etc/vsftpd/vsftpd.conf        //匿名登录

userlist_enable=YES

2)打开配置文件“/etc/vsftpd/vsftpd.conf“,在末尾追加一句话”userlist_deny=yes“。这个参数是yes,表示要设置一个黑名单

[root@localhost wj]# lftp david:543092@192.168.0.113:8765    //用户david登录,密码是543092

userlist_deny=YES

3)编辑文件“/etc/vsftpd/user_list“,在末尾追加一句话要设置的用户名即可

[root@localhost ~]#gedit /etc/vsftpd/user_list

# vsftpd userlist

# If userlist_deny=NO, only allow users in this file

# If userlist_deny=YES (default), never allow users in this file, and

# do not even prompt for a password.

# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers

# for users that are denied.

root

bin

daemon

adm

lp

sync

shutdown

halt

mail

news

uucp

operator

games

nobody

david

4)重启服务,测试黑名单内的用户是否可以访问,上面列出的都是不可以访问的用户

[root@localhost wj]# service vsftpd restart        //重启服务

关闭vsftpd                                             [失败]

 vsftpd 启动vsftpd                                    [确定]

 

[root@localhost wj]# lftp weijie:123456@192.168.0.113:8765     //用户weijie登录,可以访问

lftp weijie@192.168.0.113:~> ls

-rwxrwxrwx    1 0        0        2375494044 Aug 14 07:13 1.zip

lftp weijie@192.168.0.113:~> bye

 

[root@localhost wj]# lftp 192.168.0.113:8765                //匿名用户也可以

lftp 192.168.0.113:~> ls

drwxr-xr-x    2 0        0            4096 Aug 14 06:38 pub

lftp 192.168.0.113:/> 

 

[root@localhost wj]# lftp david:543092@192.168.0.113:8765    //用户david在黑名单中,因此无法访问,ls命令会失败

lftp david@192.168.0.113:~> ls

[0] ls &                                 

    `ls' at 0 [重新连接前延时: 28]

lftp david@192.168.0.113:~>

 

2、白名单

1)修改配置文件“/etc/vsftpd/vsftpd.conf”中的参数“userlist_enable”,确保这个参数是yes

[root@localhost wj]# gedit /etc/vsftpd/vsftpd.conf        //匿名登录

userlist_enable=YES

2)打开配置文件“/etc/vsftpd/vsftpd.conf“,在末尾追加一句话”userlist_deny=NO“。这个参数是NO,表示要设置一个白名单

[root@localhost wj]# lftp david:543092@192.168.0.113:8765    //用户david登录,密码是543092

userlist_deny=NO

3)编辑文件“/etc/vsftpd/user_list“,在末尾追加一句话要设置的用户名即可

[root@localhost ~]#gedit /etc/vsftpd/user_list

# vsftpd userlist

# If userlist_deny=NO, only allow users in this file

# If userlist_deny=YES (default), never allow users in this file, and

# do not even prompt for a password.

# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers

# for users that are denied.

root

bin

daemon

adm

lp

sync

shutdown

halt

mail

news

uucp

operator

games

nobody

david

4)重启服务,测试黑名单内的用户是否可以访问,上面列出的都是不可以访问的用户

[root@localhost wj]# service vsftpd restart        //重启服务

关闭vsftpd                                             [失败]

 vsftpd 启动vsftpd                                    [确定]

 

[root@localhost wj]# lftp david:543092@192.168.0.113:8765     //用户david登录,可以访问

lftp weijie@192.168.0.113:~> ls

-rwxrwxrwx    1 0        0        2375494044 Aug 14 07:13 1.zip

lftp weijie@192.168.0.113:~> bye

 

[root@localhost wj]# lftp weijie:123456@192.168.0.113:8765    //用户weijie不在白名单中,因此无法访问,ls命令会失败

lftp david@192.168.0.113:~> ls

[0] ls &                                 

    `ls' at 0 [重新连接前延时: 28]

lftp david@192.168.0.113:~> bye

 

[root@localhost wj]# lftp 192.168.0.113:8765         //匿名用户也不行

lftp 192.168.0.113:~> ls

[0] ls &                                 

    `ls' at 0 [重新连接前延时: 28]

lftp 192.168.0.113:~> 

 

 

做了一个Linux学习的平台,目前出来一个雏形,各位可以参考使用
链接:https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ  密码:n7bk

Linux服务器配置---ftp用户黑名单的更多相关文章

  1. linux创建ftp用户以及指定目录问题

    linux创建ftp用户以及指定目录问题 创建用户命令:如我的目录是根目录下的 MyWeb 用户名:xdh2571 #useradd -G ftp -d /MyWeb -M xdh2571#passw ...

  2. linux 指定ftp用户 特定目录及权限

    Linux添加FTP用户并设置权限   在linux中添加ftp用户,并设置相应的权限,操作步骤如下:  1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建 ...

  3. linux 添加ftp用户与登录配置详解

    不同类Unix有一定区别 版本不同也有些区别 在linux主机上如何添加ftp用户 (一)修改配置文件 vi /etc/vsftpd/vsftpd.conf 在96行,97,98行 96 chroot ...

  4. Linux添加FTP用户并设置权限

    在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建用户,命令行状态下,在root用户下: 运 ...

  5. Linux服务器配置---ftp限制ip

    ftp限制IP 1.通过vsftpd的配置文件以及“hosts.deny”和“hosts.allow”文件设置允许某个ip地址访问 1)修改配置文件“/etc/vsftpd/vsftpd.conf”中 ...

  6. linux中ftp用户登录密码忘记了怎么修改

    先来熟悉一下 vsftp 命令: 启动vsftp用命令: 1.service vsftpd start 重启vsftp用: www.111cn.net1.service vsftpd restart ...

  7. Linux服务器配置---ftp配置

    FTP其他配置 在配置文件中,还有一些关于vsftpd的其他设置,这里列出来 # Example config file /etc/vsftpd/vsftpd.conf # Allow anonymo ...

  8. Linux服务器配置---ftp限制带宽

    限制带宽 ftp服务器可以设置每个用户的带宽,这样根据实际需求来分配,更加充分的利用系统资源.带宽通过参数“anon_max_rate“和”local_max_rate“来设置,这两个参数在配置文件中 ...

  9. Linux下FTP用户的使用配置

    1.创建本地账户,用户名为自己的姓名拼音,使用本地用户测试,从以下几个方面来观察,账户 .密码.访问目录(可否查看上级目录) .上传下载的权限.

随机推荐

  1. iOS - 获取音视频文件的Metadata信息

    // // MusicInfoArray.h // LocationMusic // // Created by Wengrp on 2017/6/22. // Copyright © 2017年 W ...

  2. Java工程师之Spring Framework深度剖析专栏

    系列前言 关于本系列 本系列章节目录 Spring Framework核心篇 重新来认识你的老朋友Spring框架 Spring容器装配Bean的三种方式 Spring Framework核心概念之B ...

  3. Jmeter与Jenkins结合进行Web接口测试

    纯通过Jmeter的界面进行Web的接口测试,效率低下.为此将Jmeter的接口测试与Jenkins联合,实现持续集成.配置完成后,只需修改运行的Jmeter脚本即可,运行结束后测试结果发送到指定邮箱 ...

  4. QrenCode : 命令行下生成二维码图片

    对于二维码大家应该并不陌生,英文名为 2-dimensional bar code 或 QR Code,是一种用图形记载信息的技术,最常见的是应用在手机应用上.用户通过手机摄像头扫描二维码或输入二维码 ...

  5. 视觉slam十四讲开源库安装教程

    目录 前言 1.Eigen线性代数库的安装 2.Sophus李代数库的安装 3.OpenCV计算机视觉库的安装 4.PCL点云库的安装 5.Ceres非线性优化库的安装 6.G2O图优化库的安装 7. ...

  6. Ubuntu:编译Linux内核源代码和内核模块

    1. 目的 内核模块需要运行在Linux 3.8.13内核中,因此需要为此内核重新编译内核模块源代码. 2. 步骤 1.在Ubuntu 14.04 64位(内核3.13.0-24-generic)上, ...

  7. Linux 系统内核的调试

    http://www.ibm.com/developerworks/cn/linux/l-kdb/index.html 本文将首先介绍 Linux 内核上的一些内核代码监视和错误跟踪技术,这些调试和跟 ...

  8. 【python-opencv】22-直方图

    直方图目录: 22.1 直方图的计算,绘制与分析 22.1.1 统计直方图 22.1.2 绘制直方图 22.1.3 使用掩膜(遮罩) 22.2 直方图均衡化 22.2.1 OpenCV中的直方图均衡化 ...

  9. 【HTML5】HTML5的自学路线

    HTML5的开发市场已越来越火爆,他已经与我们的生活息息相关,它也成为了我们生活中的一部分,比如我们在网上购物,玩手游等等,都存在html5的影子,也正是因为html5的高度影响力,吸引了许多人开始关 ...

  10. flask简单的路由分发

    flask简单的路由分发 from flask import Flask, request app = Flask(__name__) @app.route('/hello') def index() ...