CentOS 6.3下vsftpd的简单使用教程

CentOS 6.3vsftpd的简单使用教程

 

1、关于vsftpd的基本知识

1)什么是vsftpd?参考百度百科,http://baike.baidu.com/view/1806035.htm

2FTP用户的3种身份:实体用户(real user)、访客(guest)和匿名登录者(anonymous

a. 实体用户(real user):一般是Linux系统上的用户,也是FTP用户,登录FTP需要密码

b. 访客(guest):不是Linux系统的用户,而是FTP用户,登录FTP需要密码

c. 匿名登录者(anonymous):不是Linux系统的用户,而是FTP用户,登录FTP不需要密码

 

2. 安装vsftpd

[root@localhost ~]# yum install vsftpd

 

3、启动vsftpd服务

[root@localhost ~]# service vsftpd start
Starting vsftpd for vsftpd:                                [  OK  ]
[root@localhost ~]# service vsftpd status
vsftpd (pid 30196) is running...

Chrome中打开ftp://主机IP,该网络地址默认指向的是/var/ftp目录,如下


4vsftpd的软件组织

/etc/vsftpd/vsftpd.conf

主配置文件

/usr/sbin/vsftpd

vsftpd的可执行文件

/etc/rc.d/init.d/vsftpd

启动脚本

/etc/pam.d/vsftpd

PAM认证文件

/etc/vsftpd/ftpusers

禁止使用vsftpd的用户列表文件

/etc/vsftpd/user_list

禁止或允许使用vsftpd的用户列表

/var/ftp

匿名用户主目录

/var/ftp/pub

匿名用户的下载目录

 

5、分析和修改/etc/vsftpd/vsftpd.conf文件

1)先备份vsftpd.conf文件

[root@localhost ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.backup

 

2)查看vsftpd的版本和vsftpd.conf文件的配置说明

[root@localhost ~]# vsftpd -v
vsftpd: version 2.2.2
[root@localhost ~]# man vsftpd.conf

 

3)默认vsftpd.conf文件的配置(删除了多余的注释)

[root@localhost ~]# cat -n /etc/vsftpd/vsftpd.conf
     1	anonymous_enable=YES
     2	local_enable=YES
     3	write_enable=YES
     4	local_umask=022
     5	dirmessage_enable=YES
     6	xferlog_enable=YES
     7	connect_from_port_20=YES
     8	xferlog_std_format=YES
     9	listen=YES
    10	pam_service_name=vsftpd
    11	userlist_enable=YES
    12	tcp_wrappers=YES
[root@localhost ~]#

以上默认配置实现如下的功能:

a. 可以使用anonymous这个匿名账号或其他实体账号(/etc/passwd)登录

b. anonymous的默认目录在/var/ftp,且无上传权限,也已经被chroot

c. 实体用户的默认目录参考/etc/passwd,并没有被chroot,可前往任何有权限即可进入的目录中

d. 任何于/etc/vsftpd/ftpusers内存在的账号均无法使用vsftpd

e. 可利用/etc/host.{allow|deny}来作为基础防火墙

f. 当客户端有任何上传/下载信息时,该信息会被记录到/var/log/vsftpd.log

g. 主动式连接的端口为20

h. 使用格林威治时间(GMT

(参考鸟哥的私房菜^_^

 

4)我的个人修改(在默认的基础上),如下

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

# The default settings created by vsftpd
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=002
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

# ---Added by wesley---

# Use local time
use_localtime=YES

# Welcome information
banner_file=/etc/vsftpd/welcome.txt

# Enable chroot and locate chroot_list file
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

# Make all real users chroot and let users in chroot_list not be chroot
# If comment the line, the users in chroot_list will be chroot (It's tricky!)
chroot_local_user=YES

# Defeine maximum clients to use ftp
max_clients=10

# Define maximum connections per ip address
max_per_ip=5

# Relocate real users' ftp homes to specific folders
# By default, real users' ftp homes is /home/<username>
user_config_dir=/etc/vsftpd/userhomes

# ---End---

ause_localtime=YES:使用本地时间。

bchroot_list_enable=YES:启用chroot,用户登录将锁定其ftp主目录,不能切换到其他目录。

cchroot_list_file=/etc/vsftpd/chroot_list:当只有chroot_local_user=NO(或者没有这一行时),在chroot_list文件(需要手动创建)中的用户,是被chroot的,用户登录将锁定其ftp主目录;而chroot_local_user=YES,在chroot_list文件中的用户,是不被chroot的,用户登录后可以任意切换目录。

dchroot_local_user=YESYESNO时,触发chroot_list中的用户允许或不允许chroot

emax_clients=10:限制FTP连接数最大为10

fmax_per_ip=5:限制每个IP最多使用5FTP连接

guser_config_dir=/etc/vsftpd/userhomes,自定义一个用户配置目录,该目录存放每个实体用户(real user)的用户名命名的文件,例如/etc/vsftpd/userhomes目录下创建一个test文件,当然test用户是存在的,在test文件中写入一行local_root=/var/ftp/pub,那么test用户登录FTP时,ftp主目录自动定位到/var/ftp/pub,而不是原来的/home/test

hlocal_umask=002:当FTP用户创建文件或文件夹时,要用到该umask值。这里比默认的配置,增加了组用户写权限。

 

参考资料:

1http://blog.csdn.net/kofterry/article/details/4277267

2http://os.51cto.com/art/201004/192447.htm

3http://tanjunjie.blog.51cto.com/6988/774256

4http://desert3.iteye.com/blog/1685734

5http://www.cnblogs.com/redhatlinux/archive/2012/04/18/2455737.html

6http://crazyidea.iteye.com/blog/1207952

7http://book.51cto.com/art/201005/199774.htm

8、《鸟哥的Linux私房菜:服务器架设篇(第二版)》,P631

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是 CentOS 7.6 安装 vsftpd 的教程: 1. 安装 vsftpdCentOS 7.6 中,可以使用 yum 命令来安装 vsftpd,命令如下: ``` sudo yum install vsftpd ``` 2. 配置 vsftpd 安装完成后,需要进行一些配置才能正常使用 vsftpd。 首先,需要修改 vsftpd 的配置文件 /etc/vsftpd/vsftpd.conf,可以使用 vi 等编辑器进行修改,命令如下: ``` sudo vi /etc/vsftpd/vsftpd.conf ``` 然后,找到以下两行并将其修改为如下内容: ``` anonymous_enable=NO local_enable=YES ``` 这样就禁用了匿名登录,启用了本地用户登录。 接着,需要添加一些用户并设置密码,命令如下: ``` sudo useradd -m ftpuser sudo passwd ftpuser ``` 其中,ftpuser 是你要添加的用户名,执行 passwd 命令后会提示输入密码,输入两遍即可设置密码。 最后,重启 vsftpd 服务并设置开机自启,命令如下: ``` sudo systemctl restart vsftpd sudo systemctl enable vsftpd ``` 3. 测试 vsftpd 现在,你可以使用 ftp 客户端来测试 vsftpd 是否正常工作了。可以使用命令如下: ``` ftp localhost ``` 然后输入用户名和密码进行登录即可。如果一切正常,你应该能够看到类似于以下的命令输出: ``` Connected to localhost (127.0.0.1). 220 (vsFTPd 3.0.2) Name (localhost:username): ftpuser 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ``` 这样,CentOS 7.6 上的 vsftpd 就安装并配置完成了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值