用vsFTPd软件架设文件服务器

用vsFTPd软件架设文件服务器

 

一、安装:

$sudo apt-get install vsftpd

       安装完毕后会自动生成一个帐户“ftp”,然后在/home下增加一个“ftp”文件夹

       有“ftp”帐户后还 要更改权限:

$sudo chmod 777 /home/ftp

 

二、配置FTP:

备份原配置文件

$sudo /etc/vsftpd.conf    /etc/vsftpd.conf.bak

然后修改内容:

$sudo  vi  /etc/vsftpd.conf

listen=YES
anonymous_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
chroot_local_user=YES
guest_enable=YES
# guest_username=?
user_config_dir=/etc/vsftpd_user_conf
pam_service_name=vsftpd.vu
local_enable=YES
#------------------End---

三、建立虚拟用户口令库文件:
$sudo mkdir /etc/vsftpd
$sudo vi /etc/vsftpd/logins.txt
logins.txt 内容:
user1
123
user2
123
user3
123

# 最后一行要回车。

四、生成vsftpd认证文件

1、先安装DB4.8

$sudo apt-get install db4.8

2、认证文件
sudo db4.8_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db


 

五、配置PAM文件

新建文件

$sudo  vi  /etc/pam.d/vsftpd.vu

内容如下:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login

 

六、建立FTP目录:
sudo mkdir /home/ftp/user1
sudo mkdir /home/ftp/user2
sudo mkdir /home/ftp/user3

七、对不同虚拟用户设置不同权限:
新建用户文件夹:

$sudo mkdir /etc/vsftpd_user_conf
配置用户文件
$sudo vi /etc/vsftpd_user_conf/user1
user1文件内容:
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/home/ftp/user1

user2和user3内容一样。

注意 /etc/vsftpd_user_conf/user1 文件内容一定不能有空格,否则会出现错误:
500 OOP:
 
八、日常维护
1。#db4.7_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db 更新帐号
2。更新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的基本选项

开启匿名FTP服务器 上传权限

在配置文件中添加以下 的信息即可:

Anon_upload_enable=yes (开放上传权限)

Anon_mkdir_write_enable=yes (可创建目录的同时可以在此目录中上传文件)

Write_enable=yes (开放本地用户写的权限)

Anon_other_write_enable=yes (匿名帐号可以有删除的权限)

开启匿名服务器下传的 权限

Anon_world_readable_only=no

注:要注意文件夹的属 性,匿名帐户是其它(other)用户要开启它的读写执行的权限

(R)读-----下 传 (W)写----上传 (X)执行----如果不开FTP的目录都进不去

Local_enble=yes (本地帐户能够登陆)

Write_enable=no (本地帐户登陆后无权删除和修改文件)

功能:可以用本地帐户 登陆vsftpd服务器,有下载上传的权限

注:在禁止匿名登陆的 信息后匿名服务器照样可以登陆但不可以上传下传

用户登陆限制进其它的 目录,只能进它的主目录

设置所有的本地用户都 执行chroot

Chroot_local_user=yes (本地所有帐户都只能在自家目录)

设置指定用户执行 chroot

Chroot_list_enable=yes (文件中的名单可以调用)

Chroot_list_file=/ 任意指定的路径/vsftpd.chroot_list

注 意:vsftpd.chroot_list 是没有创建的需要自己添加,要想控制帐号就直接在文件中加帐号即可

限制本地用户访问 FTP

Userlist_enable=yes (用userlistlai 来限制用户访问)

Userlist_deny=no (名单中的人不允许访问)

Userlist_file=/ 指定文件存放的路径/ (文件放置的路径)

注:开启 userlist_enable=yes匿名帐号不能登陆

安全选项

Idle_session_timeout=600(秒) (用户会话空闲后10分钟)

Data_connection_timeout=120(秒) (将数据连接空闲2分钟断)

Accept_timeout=60(秒) (将客户端空闲1分钟后断)

Connect_timeout=60(秒) (中断1分钟后又重新连接)

Local_max_rate=50000(bite) (本地用户传输率50K)

Anon_max_rate=30000(bite) (匿名用户传输率30K)

Pasv_min_port=50000 (将客户端的数据连接端口改在

Pasv_max_port=60000 50000—60000之间)

Max_clients=200 (FTP的最大连接数)

Max_per_ip=4 (每IP的最大连接数)

Listen_port=5555 (从5555端口进行数据连接)

查看谁登陆了FTP, 并杀死它的进程

ps –xf |grep ftp

kill 进程号

配置的时候注意文件权 限的问题,开启匿名和本地后,关键是文件权限的设置,为了给不同的用户分配不同的权限,可以生成一个组,例如ftpuser, 然后赋 予它何时的权限例如755,chroot()设置可以使得本地用户限制在登录时的目录,这对于安全很重要,可以这是local_root指定本地用户登录 时的目录,负责为/home下相应目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值