构建FTP文件传输服务器

   5.为个别虚拟用户建立独立的配置文件

anon_upload_enable=YES //允许匿名用户上传文件

[root@crushlinux ~]# vi /etc/vsftpd/vsftpd.conf

local_enable=YES //使用虚拟用户,需要启用本地用户

1.建立虚拟FTP用户的帐号数据库文件用到db_load工具先安装软件包

# mkdir /etc/vsftpd/vusers_dir/ //创建用户配置目录

max_clients=200

pam_service_name=vsftpd

local_umask=077

123

 

xferlog_std_format=YES

 

write_enable=YES

(5)FTP的端口

max_per_ip=2 //现在来自同一IP客户端的最大并发连接数

[root@crushlinux ~]# echo "user" |passwd --stdin u2

local_enable=YES //允许本地用户访问

     被动模式

anonymous_enable=YES //允许匿名访问

local_root=/test   规定了a用户的根目录  注意:一定要把目录的属主改为虚拟用户对应的系统用户。

tcp_wrapper=YES (到此即可以访问)

/etc/vsftpd/ ftpusers  文件中的用户禁止登录FTP服务器(黑名单)

# vi /etc/vsftpd/vsftpd.conf

  

# ftp

xferlog_std_format=YES

connect_from_port=20

本地是pam_service_name =vsftpd

pam_service_name=vsftpd

 

  1. 修改配置文件

服务器以pasv命令告诉客户我打开了某个端口(非20端口),你来连接我,客户端会像服务器的非20端口建立数据连接

  1. 添加测试用户

对应刚才生成user.db的文件

xferlog_enable=YES

      (2)还需要从新从客户端登陆,否则修改后的配置看不到效果。

anon_other_write_enable=YES //允许匿名用户有其他写权限(慎用,可能带来安全隐患)

图片 1

local_enable=NO //不需要启用本地用户时,建议将此项设置为NO

   (1)mount /dev/cdrom /mnt

123 //偶数行密码

 

dirmessage_enable=YES

5、在vsftpd的配置文件中支持虚拟用户

anon_umask=022

 (8)根据传输文件是否进行字符转换分为:

write_enable=YES //允许开发写权限

chroot_local_user=YES  如果红色3条配置没有的话就会报错:用户身份验证失败

xferlog_enable=YES

(7)工作模式

pasv_min_port=24500

3    限制vsftpd服务的并发数,传输速度

  1. 修改vsftpd.conf配置文件,开放匿名用户访问权限、上传许可

mkdir /test

listen=YES

   enabled=1

connect_from_port=20

 

local_max_rate=1024000 //本地用户上传下载限速为1M/s

 

# db_load -T -t hash -f /mima /etc/vsfpd/vusers.db

   IIS Serv-U Vsftpd proftpd pureftpd

# cd /etc/vsftpd/vusers_dir

 

pam_service_name=vsftpd.vu //修改使用的PAM文件位置

 

guest_username=mei //将映射用户指定为mei

anon_mkdir_write_enable=YES

anon_umask=022 //匿名用户上传文件的权限掩码

还要注意每行配值的末尾不要有空行,否则也会有报错

  1. 为不同的用户建立独立的配置文件
  1. 1.  创建测试文件
  2. 2.  匿名用户ftp对/var/ftp/pub有写入权限
  3. 3.  允许匿名用户浏览
  4. 4.  允许用户(匿名,本地,虚拟)有上传权限
  5. 5.  允许匿名用户有上传权限
  6. 6.  允许匿名用户有上传文件夹权限
  7. 7.  禁止匿名用户有删除,覆盖等权限
  1. 使用虚拟用户访问FTP,验证

user_config_dir=/etc/vsftpd/user_dir  用户配置目录支持

-T : 允许非Berkeley DB的应用程序从文本格式转换的DB数据文件

   service vsftpd start

# ls

guest_username=vu     指定映射的系统用户名称

  1. 调整匿名用户上传目录权限,并准备下载测试文件

   [rhel-Server]

# ls -lh /boot > /var/ftproot/vutest.list //建立测试文件

   b

-f : 用于指定用户名/密码文件列表

      3.3  限制匿名用户传输速率为50KB/s

# put install.log / wget ftp://192.168.10.1/ftpconfig.tar.ba2 (只是下载时)

max_per_ip=50

# vi /etc/vsftpd/vsftpd.conf

(2)FTP客户端相关软件

anon_other_write_enable=YES

   在网络或是计算中输入ftp地址:格式如下图。

anon_max_rate=1000000

      21用于建立控制连接,并传输FTP控制命令。(命令端口)

anonymous_enable=NO //若不需要启用匿名访问,此项设为NO

vi /etc/vsftpd/vsftpd.conf

# chmod 600 /etc/vsftpd/vusers.db

[root@crushlinux ~]# echo "user" |passwd --stdin u3

# service vsftpd restart

userlist_deny=NO

# service vsftpd restart

tcp        0      0 192.168.200.129:2121        0.0.0.0:*                   LISTEN      3552/vsftpd   

wang //奇数行用户名

 

  1. 建立PAM认证文件

进入到pub目录下,可以创建和上传测试目录了。如图2

# user_config_dir=/etc/vsftpd/vusers_dir //添加此行配置项,指定用户配置目录

   1

pasv_enable=YES //允许被动模式并设置端口范围

     2.2  上限端口为24600

userlist_enable=YES

    二进制模式(又称为Binary模式)以二进制序列传输数据

# chown ftp /var/ftp/pub

(3)VSFTP的守护进程

# chmod 755 /var/ftproot //更改FTP更目录权限

      主动模式:

# passwd wang

配置选项讲解

# ftp 192.168.10.1

注意:(1)修改完配置之后需要重启完服务才能生效

dirmessage_enable=YES

cd /etc/vsftpd/vsftpd.confg

匿名FTP

[root@crushlinux ~]# netstat -naptu |grep "vsftpd"

# cd pub

(4)FTP的启动脚本

max_clients=20 //限制客户端并发客户端连接数最多为20

这个选项,否则会显示用户验证失败

  1. 在客户端验证(此处验证不再复述)

(3)启动服务

# vi /etc/pam.d/vsftpd.vu

 

  1. 重启服务

2、创建虚拟用户文件

guest_enable //启用用户映射功能

   useradd -s /sbin/nologin vu

# useradd -d /var/ftproot -s /sbin/nologin mei //建立映射账户mei并指定宿主目录

listen=YES

# vi /mima

      3.4  限制本地用户传输速率为200KB/s

  1. 修改vsftpd配置文件,添加用户支持

account    required     /lib64/security/pam_userdb.so db=/etc/vsftpd/user

xferlog_std_format=YES

   3.建立支持虚拟用户的PAM认证文件

# ls

(2)备份配置文件

listen=YES

默认就是所有权限

  1. 建立FTP访问的根目录及虚拟用户对应的系统账号

/etc/vsftpd/vsftpd.conf

dirmessage_enable=YES

[root@crushlinux ~]# netstat -naptu |grep "vsftpd"

userlist_enable=YES

 

本地FTP

xferlog_std_format=YES

xferlog_enable=YES

将允许登陆的用户加入到白名单中

  1. 重启服务

  2. 客户端下载测试

chroot_local_user=YES

nan

    文本模式(又称为ASCII)以文本序列传输数据,用的较多

  1. 重启服务

   rpm -ivh db4-utils-4.7.25-17.el6.x86_64.rpm

chroot_local_enable=YES //将本地用户禁锢在宿主目录中,处于安全考虑

vi /etc/vsftpd/vsftpd.conf   加入下面一行

# get ftpconfig.tar.bz2

   -T 允许非Berkeley DB的应用程序使用文本格式转换的DB数据文件

tcp_wrapper=YES

      20用于建立数据连接,传输文件数据。(数据端口)

# quit/bye

anon_upload_enable=YES

  1. 建立虚拟用户名/密码数据库

dirmessage_enable=YES

auth required pam_userdb.so db=/etc/vsftpd/vusers

           客户端想服务端21端口发送建立连接请求,需要传输数据时,客户端会通过port命令告诉服务器自己监听的端口,服务器会主动通过20端口与客户端建立数据连接。

# file /etc/vsftpd/vusers.db

通过db_load工具创建出Berkeley DB格式的数据库文件

# rpm -ivh --aid --nodeps db4-utils-4.3.29-9.fc6.i386.rpm

(1)查看ftp的默认根路径,默认是有一个pub目录(默认的跟目录),

account required pam_userdb.so db=/etc/vsftpd/vusers

cd /etc/vsftpd/user_dir

-t hast :指定读取数据文件的方法

pasv_max_port=24600

write_enable=YES //开发写权限

   -t hash  读取文件的基本方法

anon_mkdir_write_enable=YES

   /usr/sbin/vsftpd

图片 2

      3.2  限制每个IP地址的连接数最多50

anon_mkdir_write_enable=YES //允许匿名用户有写权限

 

anonymous_enable=NO //若不需要启用匿名访问,此项设为NO

anon_umask=022

# useradd wang

 

tcp_wrapper=YES

   cd /etc/vsftpd/

connect_from_port=20

local_enable=YES

? 建立基于基本用户的vsftpd服务

guest_enable=YES            启用用户映射功能

pasv_max_port=24600

anonymous_enable=YES

建立基于虚拟用户的vsftpd服务

   4.在vsftpd.conf文件中添加支持配置

# ls -lh /etc/*.conf* >/home/wang/etcconf.list

(4)改变根目录的属主,如果不改变的话,只能访问,其他权限不能生效。因为我们是以ftp用户的身份访问的,而pub默认的属主属组是root。

xferlog_std_format=YES

 

local_umask=022 //本地用户上传文件的权限掩码

   2、安装

listen=YES

local_enable=YES

anon_upload_enable=YES

   gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

userlist_enable=NO //未启用本地用户时,可以将用户列表功能禁用

3、创建虚拟用户对应的系统用户

# vi wang

   vim vsftpd.conf

# vi mei (配置在此省略)

实验3

简介:

    [root@Centos2 ~]# ls /var/ftp/

 

anon_max_rate=50000

实验1

auth       required     /lib64/security/pam_userdb.so db=/etc/vsftpd/user

创建账号数据

pam_service_name=vsftpd

 

    -f 指定数据原文件

      yum -y install vsftpd*

 

验证:

 

 

   /etc/init.d/vsftpd

userlist_enable=YES

virtual_use_local_privs=YES

如果没有这条配置的话上传将会显示错误.这条最重要

u2

 

pasv_min_port=24500

 

userlist_enable=YES

   1.建立虚拟FTP用户的帐号数据库文件

[root@crushlinux ~]# useradd u2

listen=YES

(1)FTP服务相关软件

 

 

tcp_wrappers=YES

总结:本地用户和虚拟用户不能同时登录、因为认证方式只有一种

   1

   db_load -T -t hash -f user user.db

 

实验2

实验部分

主配置文件

 

 

 mkdir /etc/vsftpd/user_dir

搭建FTP服务:

 

 

 图片 3

   1

     

登陆上默认是空白的,因为这是用户的家目录。

write_enable=YES

pam_service_name=vsftpd

4、建立支持虚拟用户的PAM认证文件

dirmessage_enable=YES

 

 

 

      3.1  限制并发客户连接最多200

service vsftpd restart

u1

listen=YES

       1.1  IP为:192.168.200.129

vi /etc/pam.d/vsftpd.vu

listen_port=2121

 

        1.2  端口为:2121

connect_from_port_20=YES

 

在配置文件中加入红色部分内容

  

   c

pasv_enable=YES

 

2    使用vsftpd服务的被动模式

listen_address=192.168.200.129

   基数行代表用户名,偶数行代表密码

   我们会看到默认的pub目录。

   gpgcheck=0

     2.1  下限端口为24500

 

 

   ftp命令 CuteFTP FlashFTP LeapFTP Filezilla gftp kuftp

创建测试用户,并且设置密码

   chown ftp /var/ftp/pub

为用户a、b建立独立的配置目录及文件 这一行也是必须有的

登陆验证

[root@crushlinux ~]# useradd u3

   TCP协议的20,21端口与客户端进行通信

vi /etc/vsftpd/user_list

[root@crushlinux ~]# useradd u1

用u3用户登陆,会报错误(windows不同系统报错不会完全一致):

 

 

connect_from_port_20=YES

   cp vsftpd.conf vsftpd.bak

   内容如下

注意:在做虚拟用户的时候,一定要去掉userlist_deny=NO

6.为个别虚拟用户建立独立的配置文件

[root@crushlinux ~]# vi /etc/vsftpd/vsftpd.conf

           客户端想服务端21端口发送建立连接请求,需要传输数据时,

构建基于虚拟用户的FTP服务

xferlog_enable=YES

write_enable=YES

实验4

   2.创建FTP根目录及虚拟用户映射的系统用户

 

   7.使用虚拟FTP账户访问测试

   name=Red Hat Enterprise Server

添加虚拟用户支持

  

/etc/vsftpd/ user_list 文件中的用户可能被禁止或允许登录FTP服务器,具体看vsftpd.conf的设置

1    修改vsftpd服务的监听地址,端口

   6.重新加载vsftpd配置

xferlog_enable=YES

   格式为:ftp://用户名:密码@ftpIP地址

 

 

vim a

 图片 4

tcp_wrappers=YES

pam_service_name=vsftpd.vu   指定新的PAM认证文件

  

  1、搭建yum仓库

下面是关于FTP这个服务的属性

[root@crushlinux ~]# service vsftpd restart

 图片 5

local_umask=077

local_max_rate=200000

   vim user

anon_other_write_enable=NO 是否允许匿名用户有其他写入权(改名,删除,覆盖)

FTP全名是File Transfer Protocol(文件传输协议) C/S架构

[root@crushlinux ~]# echo "user" |passwd --stdin u1

 (6)用户控制列表文件

   baseurl=file:///mnt/Server

 

加入以下两行

启动服务并测试

   pub

  1.   创建测试帐号u1、u2、u3密码都为“user”
  2.  允许本地用户访问
  3.  将权限掩码设为077
  4.   将本地帐号禁锢在宿主目录中
  5.   只允许u1、u2两个用户可以登录

   (2)cat /etc/yum.repos.d/rhel-debuginfo.repo

虚拟是pam_service_name =vsftpd.vu 

   a

本文由澳门威斯尼人平台登录发布于 操作系统,转载请注明出处:构建FTP文件传输服务器

相关阅读