vsftpd的简单配置
本文最后更新于 2186 天前,其中的信息可能已经有所发展或是发生改变。

2016-12-3 更新 一定要把行尾的空格给删除掉,否则提示:500 OOPS: bad bool value in config file for: anonymous_enable,所有配置文件都是。

一、安装vsftpdb4-utils

yum install -y vsftpd db4-utils      ## db4是加密工具

二、配置vsftpd虚拟用户

建立虚拟账号相关联的系统账号:

useradd vsftpd -s /sbin/nologin         ## 用户名随便

建立虚拟账户相关的文件:

vim /etc/vsftpd/vsftpd_login           ## 用来存放帐号密码,暂时的

## 内容如下:

test1                   ## 奇数行是帐号,偶数行是密码,以此类推!
123456
test2
abcdef
......
......
chmod 600 /etc/vsftpd/vsftpd_login

## 更改权限

生成加密的密码文件

db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

rm -rf /etc/vsftpd/vsftpd_login                   ## 把原来未加密的密码文件删除掉


建立虚拟账号相关的目录以及配置文件

mkdir /etc/vsftpd/vsftpd_user_conf                ## 虚拟的用户的home目录

cd /etc/vsftpd/vsftpd_user_conf

创建和用户对应的配置文件  配置文件名要和虚拟机用户名一致

vim test1 内容如下:

local_root=/home/vsftpd/test1                      ## test1帐号的ftp目录
anonymous_enable=NO                                ## 不允许匿名用户登陆
write_enable=YES                                   ## 开放本地用户写的权限
local_umask=022                                    ## 本地用户上传文件的umask,上传文件默认权限644(666-022),上传文件夹默认权限755(777-022)
anon_upload_enable=NO                              ## 禁止匿名用户上传
anon_mkdir_write_enable=NO                         ## 禁止匿名用户创建
idle_session_timeout=600                           ## 用户会话空闲时间(秒)超过就自动断开
data_connection_timeout=120                        ## 如果 client与 Server 间的数据传送在 120 秒内都无法传送成功,那Client的联机就会被vsftpd强制剔除
max_clients=10                                     ## ftp客户端的最大连接数
max_per_ip=5                                       ## 每个ip最大连接数
local_max_rate=50000                               ## 本地用户的传输速度限制单位是(b) 0 为不限制
mkdir /home/vsftpd/test1                ## test1用户的home目录

修改权限:

chown -R vsftpd:vsftpd /home/vsftpd
vim /etc/pam.d/vsftpd            ## 虚拟机用户验证

在最开头添加两行

auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 
## 如果是64位系统,则改为/lib64/security/pam_userdb.so
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 
## 如果是32位系统,则改为/lib/security/pam_userdb.so

再修改

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES           ## 改为 anonymous_enable=NO
#anon_upload_enable=YES        ## 改为 anon_upload_enable=NO
#anon_mkdir_write_enable=YES   ## 改为 anon_mkdir_write_enable=NO

再增加:

chroot_local_user=YES         ## 禁止去其它目录
guest_enable=YES              ## 允许来宾用户
guest_username=vsftpd         ## 映射系统真实存在的用户,刚开始建立的vsftpd
virtual_use_local_privs=YES   ## 当该参数激活(YES)时,虚拟用户与其宿主用户有相同的权限。 当此参数关闭(NO)时,虚拟用户与匿名用户有相同的权限。默认情况下此参数是关闭的(NO)。
user_config_dir=/etc/vsftpd/vsftpd_user_conf       ## 虚拟用户配置文件目录

启动

service vsftpd start

添加防火墙iptables规则

1、ftp主动模式下iptables的规则配置

iptables -I INPUT -p tcp --dport 21 -j ACCEPT

2、ftp被动模式下iptables的规则配置

方法一:

iptables -I INPUT -p tcp --dport 21 -j ACCEPT
vim /etc/vsftpd/vsftpd.conf

添加以下内容:

pasv_min_port=50000
pasv_max_port=60000
iptables -I INPUT -p tcp --dport 50000:60000 -j ACCEPT

方法二:

使用连接追踪模块

iptables -I INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
modprobe nf_conntrack_ftp
vim /etc/sysconfig/iptables-config

添加以下内容:

IPTABLES_MODULES="nf_conntrack_ftp"
暂无评论

发送评论 编辑评论


|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇