新萄京计算机网络

 新萄京计算机网络     |      2019-12-16

CentOS 6.3 FTP搭建

vsftpd提供了3种ftp登录形式:

1、anonymous(匿名帐号)

使用anonymous是应用广泛的一种FTP服务器.如果用户在FTP服务器上没有帐号,那么用户可以以anonymous为用户名,以自己的电子邮件地址为密码进行登录.当匿名用户登录FTP服务器后,其登录目录为匿名FTP服务器的根目录/var/ftp.为了减轻FTP服务器的负载,一般情况下,应关闭匿名帐号的上传功能.

2、real(真实帐号)

real也称为本地帐号,就是以真实的用户名和密码进行登录,但前提条件是用户在FTP服务器上拥有自己的帐号.用真实帐号登录后,其登录的目录为用户自己的目录,该目录在系统建立帐号时系统就自动创建.

3、guest(虚拟帐号)

如果用户在FTP服务器上拥有帐号,但此帐号只能用于文件传输服务,那么该帐号就是guest,guest是真实帐号的一种形式,它们的不同之处在于,geust登录FTP服务器后,不能访问除宿主目录以外的内容

方法/步骤
1.使用yum安装vsftp,省去依赖包麻烦

2.修改配置文件
新萄京娱乐场,mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.confbak //备份
新萄京娱乐手机版,vi /etc/vsftpd/vsftpd.conf //创建配置文件
列出我的配置,根据环境修改做适当修改,注意每行后面不可有空格

anonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022anon_upload_enable=NOanon_mkdir_write_enable=NOdirmessage_enable=YESxferlog_enable=YESconnect_from_port_20=YESchown_uploads=NOxferlog_file=/var/log/xferlogxferlog_std_format=YESnopriv_user=ftpdeasync_abor_enable=YESascii_upload_enable=YESascii_download_enable=YESftpd_banner=Welcome to blah FTP service.chroot_local_user=NOchroot_list_enable=YESchroot_list_file=/etc/vsftpd/vsftpd.chroot_listlisten=YESpam_service_name=vsftpduserlist_enable=YEStcp_wrappers=YESbackground=YESguest_enable=YESguest_username=ftpdeuser_config_dir=/etc/vsftpd/user_configmax_clients=100max_per_ip=20pasv_enable=YESpasv_min_port=6000pasv_max_port=7000

3.创建本地用户ftpde 以及chroot虚拟用户映射文件 useradd ftpde //创建ftpde用户,此用户为系统用户 vi /etc/vsftpd/vsftpd.chroot_list ftpde //该文件为手动建立,每一行代表一个欲将虚拟用户映射到本地账户的名称

4.创建用户账户文件passwd.file 该文件默认也不存在的,该文件用来存储用户账户以及明文密码,格式为每个账户两行,第一行是用户名,第二行是密码,以此类推! vi /etc/vsftpd/passwd.file ftpdemo 123456

5.生成虚拟用户认证的db文件 db_load -T -t hash -f /etc/vsftpd/passwd.file /etc/vsftpd/ftpuser_passwd.db

6.创建用户配置文件 建立好账户后,需要为每个用户创建记录FTP目录位置、用户权限等信息的配置文件 mkdir /etc/vsftpd/user_config 配置文件以FTP用户名为文件名称,每个FTP用户一个文件,例如ftedemo vi /etc/vsftpd/user_config/ftpdemo 内容如下: local_root=/data/FTP/ftpuser //该路径对应的目录必须存在,下一步创建 write_enable=YES anon_umask=022 anon_world_readable_新萄京娱乐app,only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES

7.创建ftp用户目录,并赋读/写权限 mkdir -p /data/FTP/ftpdemo FTP 用户所映射到的系统帐户必须对 FTP 用户主目录拥有相应的读/写权限。仍然以ftpdemo用户为例,本文中ftpdemo虚拟用户是被映射到ftpde系统帐户的,所以 ftpde 系统帐户必须拥有对ftpdemo 的 FTP 主目录/data/FTP/ftpuser 的读/写权限 chown -R ftpde:ftpde /data/FTP/ftpdemo/

8.修改Pam 认证模块 备份原有配置文件 mv /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak 创建新配置文件 vi /etc/pam.d/vsftpd具体内容如下: auth required pam_userdb.so db=/etc/vsftpd/ftpuser_passwd account required pam_userdb.so db=/etc/vsftpd/ftpuser_passwd

9.修改防火墙 vi /etc/sysconfig/iptables 配置如下: -A INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT -A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT -A INPUT -p tcp –dport 6000:7000 -j ACCEPT 重起防火墙,使配置生郊 service iptables restart

10.关闭selinux setenforce 0 //临时关闭,重起系统失效 或者修改selinux配置关闭selinux vi /etc/selinux/config SELINUX=disable

6.3 FTP搭建 vsftpd提供了3种ftp登录形式: 1、anonymous(匿名帐号) 使用anonymous是应用广泛的一种FTP服务器.如果用户在FTP服务器上没有帐号,那...

四、建立虚拟用户配置文件

mkdir /etc/vsftpd/vsftpd_user_conf

一、概述

vsftpd是Linux下比较著名的FTP服务器,搭建FTP服务器当然首选这个。

本文介绍了在CentOS 6.4下安装vsftpd、配置虚拟用户登录FTP的过程。

二、安装配置过程

1、安装vsftpd

  • 查看是否已经安装vsftpd

rpm -qa | grep vsftpd

  • 如果没有,就安装,并设置开机启动

yum -y install vsftpd
chkconfig vsftpd on

1、所有权限

vim /etc/vsftpd/vsftpd_user_conf/user1
write_enable=YES
anonymous_enable=NO
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=022
download_enable=Yes
local_root=/data/user1

3、安装Berkeley DB工具

很多人找不到db_load的问题就是没有安装这个包。

  • 安装

yum install db4 db4-utils

  • 创建用户密码文本

touch /etc/vsftpd/vuser_passwd.txt

  • 修改配置文件

vi /etc/vsftpd/vuser_passwd.txt

注意奇行是用户名,偶行是密码
test
123456

  • 生成虚拟用户认证的db文件

db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db

  • **编辑认证文件vsftpd

vi /etc/pam.d/vsftpd
全部注释掉原来语句,再增加以下两句:
auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required pam_userdb.so db=/etc/vsftpd/vuser_passwd

  • 创建虚拟用户配置文件

mkdir /etc/vsftpd/vuser_conf/
//文件名等于vuser_passwd.txt里面的账户名,否则下面设置无效
vi /etc/vsftpd/vuser_conf/test

内容如下
local_root=/ftp/www //虚拟用户根目录,根据实际情况修改
write_enable=YES //可写
anon_umask=022 //掩码
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

  • 设置Selinux

进入/etc/vsftpd 下,执行:

//设置ftp可以使用home目录
setsebool -P ftp_home_dir=1
//设置ftp用户可以有所有权限
sersebool -P allow_ftpd_full_access=1

  • 设置FTP根目录权限

//创建目录
mkdir /ftp/www
chmod -R 755 /ftp
chmod -R 777 /ftp/www
//最新的vsftpd要求对主目录不能有写的权限所以ftp为755,主目录下面的子目录再设置777权限

  • 设置防火墙

vi /etc/sysconfig/iptables

在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:

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

  • 然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:

service iptables restart

OK,运行“service vsftpd start”,你就可以访问你的FTP服务器了。