编者按:本文总结Debian上安装、配置、使用vsftpd服务器的一些常见问题。有关更多vsftpd的技巧,可以参考BKJIA的vsftpd专题。vsftpd官方也有个通用的常见问题解答:vsftpd
faqs,读者可以进行参考。

前列腺炎能否根治?

安装vsftpd

apt-get update
apt-get install vsftpd
chroot_local_user=YES
allow_writeable_chroot=YES

CentOS 7.3.1611

金沙国际官网,1.debian上如何安装vsftpd

有这种疑问的人多数情况下是担心前列腺炎的反复发作,从而带来身心双重痛苦。在这里可以肯定的告诉大家,前列腺炎不是治不好,而是治疗不当治不好,不坚持治疗治不好,

配置vsftpd

vi /etc/vsftpd.conf

一般配置选项如下:

# listen=YES
listen_ipv6=YES
# listen 和 listen_ipv6 开一个就行;两个都开,vsftpd就报错了
# 匿名用户访问
anonymous_enable=NO
# 本地用户访问
local_enable=YES
write_enable=YES
local_umask=022
anon_mkdir_write_enable=NO
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd

rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO

各个选项具体含义参见默认的vsftpd.conf文件里面注释;主要讲下
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
这三个参数的含义:
chroot_local_user设为YES的情况下,如果chroot_list_enable设为YES,
那么chroot_list_file里面列出的用户有权限访问用户主目录之外的目录;
一般情况下直接如不允许所有用户访问用户主目录之外的目录,直接chroot_local_user=NO即可

安装

yum install vsftpd

很简单:

不注意治疗中和治愈后良好的生活习惯的养成治不好。患者只要到正规的医院接受正规的检查和治疗同时避免一些不良因素的影响,就一定能够彻底治好前列腺炎。

增加用户组和用户

groupadd ftpuser
mkdir /home/remote1
useradd -g ftpuser remote1
passwd remote1
# 输入新密码

vim /etc/passwd
remote1:x:1001:1001::/home/remote1:/sbin/nologin
vi /etc/shells
#在最末尾添加一行
/sbin/nologin

chown -R remote1:ftpuser /home/remote1
chmod 700 /home/remote1

配置

  • 准备好ftp目录,假设有 jin、shui、huo 三个虚拟用户

mkdir /opt/ftp/
  • 准备好ftp用户

useradd ftp -s /sbin/nologin -d /opt/ftp 
  • 为虚拟用户jin、shui、huo创建目录

mkdir /opt/ftp/{jin,shui,huo}
chown -R ftp.ftp /opt/ftp
  • vim /etc/vsftpd.conf

# 禁止匿名登陆
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
# 允许本地用户(/etc/passwd)登陆
local_enable=YES
# 允许上传
write_enable=YES
# 上传文件权限掩码
local_umask=022
# 文件夹提示语,将文件夹中.message文件里的提示信息显示给登陆用户
dirmessage_enable=YES
# 开启上传/下载日志记录
xferlog_enable=YES
# 设置日志文件
xferlog_file=/var/log/xferlog
# 使用标准日志格式
xferlog_std_format=YES
# 确保使用20端口进行数据传输
connect_from_port_20=YES
# 禁止修改上传文件宿主
chown_uploads=NO
# 若允许修改上传文件宿主,指定文件宿主
# chown_username=someuser
# 设置vsftpd服务的宿主用户
nopriv_user=ftp
# 设置vsftpd登陆提示语
ftpd_banner=Welcome to My FTP service.
# 为所有用户启用 chroot 环境
chroot_local_user=YES
# 在chroot_local_user=YES情况下,chroot_list_file 定义了不受 chroot 限制的用户列表
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
# 不允许ls递归列出(-R 选项)
ls_recurse_enable=NO
# vsftpd 以standardalone模式运行并侦听在ipv4地址端口上
listen=YES
# 设置PAM服务下Vsftpd的验证配置文件名
pam_service_name=vsftpd
# 
userlist_enable=YES
tcp_wrappers=YES
# 配置虚拟用户目录及权限
guest_enable=YES
guest_username=ftp
virtual_use_local_privs=YES
local_root=/home/ftp/$USER
user_sub_token=$USER
# 限制最大客户端连接数
max_clients=50
# 限制单ip最大连接数
max_per_ip=10
# 修改默认端口21为2211
listen_port=2211
# 启动被动模式
pasv_enable=YES
# 限制被动模式下端口范围
pasv_min_port=49152
pasv_max_port=65534
# 使用本地时间
use_localtime=YES
  • 配置PAM认证

    • 创建用户密码文件

apt-get install vsftpd

前列腺炎都会有哪些症状?

chroot权限控制

如果用户被允许访问主目录之外的目录(chroot=true),则该用户通过ftp连接服务器可以访问其他用户或者用户组不开放的文件和目录之外的服务器上的大部分文件和目录;
所以,一般不允许用户访问主目录之外的目录(chroot=false),此时ftp连接的时候往往会报错;此时需要更改用户主目录权限:

chmod a-w /home/remote1

更改后用户ftp登录后无法在用户根目录下创建子目录和写文件;所以需要创建子目录,然后将文件写入到子目录中。

vim /etc/vsftpd/virtusers,格式为一行用户名一行密码

jin
123456
shui
123456
huo
123456

+ 生成用户数据文件

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

+ 修改PAM认证配置文件 /etc/pam.d/vsftpd

2.vsftpd的去除匿名用户登录问题

可以有疼痛(会阴、下腹部、腰骶部、阴茎阴囊)症状、排尿改变及尿道分泌物、性功能改变、男性不育、精神神经症状(失眠、焦虑、多梦、厌食、情绪低落)等。

启动vsftpd服务

service vsftpd restart
# 查看服务状态
service vsftpd status

金沙国际官网 1

vsftpd running

查看端口监听状态:

netstat -nap |grep LISTEN

金沙国际官网 2

vsftpd listening

nginx和vsftpd分别在监听80和21端口

在最前面添加这两行

auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers

* 启动服务

systemctl start vsftpd

## 遇到的问题
> 500 OOPS: cannot locate user entry:mello
500 OOPS: 远程主机关闭连接。

  忘了给虚拟用户创建目录了,建好目录并修改目录宿主为ftp即可

> 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
500 OOPS: 远程主机关闭连接。

从 vsftpd 2.3.5 开始,用户被锁定的 chroot 目录不可写。这是为了防止安全漏洞。
允许上传的安全方法是保持 chroot 启用,并配置您的 FTP 目录。
如下所示,用户只能上传文件到用户根目录下的upload子目录里
vi /etc/vsftpd.conf
anonymous_enable=YES

哪些情况可以导致前列腺炎的发生呢?

FTP客户端

Mac下ftp客户端可以使用FileZilla:
下载链接

配置文件里配置

local_root=/opt/ftp/user

修改为

前列腺炎的发生可以和细菌等病原微生物的感染有关,比如有些病人的前列腺炎是继发于局部或全身感染之后出现的,那这些就和病原微生物的感染有关。还有些并不存在明确的感染因素,就像上面案例中提到的几位,在医院检查都没有发现明确的感染的证据,但他们都有一个共同的特征,就是都属于“坐功”深厚的人群。

命令行创建ftp目录

anonymous_enable=NO

由于久坐导致前列腺、会阴、盆底等组织处于血液循环不畅、盆底肌肉紧张或痉挛、舒缩失调等状态,出现了一系列症状。憋尿,也是一个因素,它使得后尿道及尿道括约肌过度紧张,除了诱发尿频等症状外,还可能引起膀胱功能的损害。

mkdir -p /opt/ftp/user/upload

3.如何更改vsftpd的默认端口

前列腺炎如何治疗?

安全考虑,根目录是不允许上传的,响应: 553 Could not create file.

vi /etc/vsftpd.conf

治疗主要包括针对病因的治疗,如:抗生素应用;如避免久坐、避免憋尿等。还有针对症状的治疗:包括解痉镇痛抗炎抗抑郁等。

chmod 550 /opt/ftp/user

新增一行

还有中药辨证治疗。心理疏导也是前列腺炎治疗中非常重要的一部分,针对患者最关心的问题进行疏导。当然还有理疗。当前还有些治疗是侵入性的,不做推荐。

chmod 750 /opt/ftp/user/upload

## iptables
listen_port=2010

上一篇12下一页

需要加载 nf 内核模块

echo nf_conntrack_ftp >
/etc/modules-load.d/nf_conntrack_ftp.conf
modprobe nf_conntrack_ftp

4.如何允许本地用户登录

iptables 开放端口

iptables -I INPUT -m state –state NEW -m tcp -p tcp –dport 2211 -j
ACCEPT
iptables -I INPUT -m state –state NEW -p tcp -m tcp –dport 49152:65534
–syn -j ACCEPT

#local_enable=YES

前面的#去掉

5.如何允许用户可以上传文件

#write_enable=YES

前面的#去掉

6.如何添加一个新用户

由于我是用本地用于登录的模式,所以确定你的local_enable=YES已经开启,再做下面的工作

首先添加一个用户组

groupadd ftpgroup

然后添加用户

useradd blogguy_cn –g ftpgroup –d /home/blogguy.cn –s /bin/bash
passwd blogguy_cn

输入新密码,即可生效

7.如何限制新添加的用户不能使用bash登录

首先检查的你的shells文件

vi /etc/shells

看看有没这两行

/sbin/nologin
/bin/false

没有的话加上,然后更新用户的bash

usermod -s /sbin/nologin blogguy_cn

或者

usermod -s /bin/false blogguy_cn

查看你的passwd文件是否生效

cat /etc/passwd

8.如何锁定用户在自己的主目录

有两个方法,我分别说

第一个方法:一刀切,把所有的用户都限制在自己的主目录

#chroot_local_user=YES

把前面的注释去掉即可

第二个方法:限制部分用户在自己的主目录

首先

vi /etc/vsftpd.chroot_list

把你要限制的用户一行一个的添加进去

然后开启vsftpd.conf的

#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list

把#号去掉即可

9.如何只允许部分系统用户登录ftp

首先新建一个允许登录的用户文件

vi /etc/vsftpd.user_list

输入允许登陆的用户名blogguy_cn,一行一个

然后

vi /etc/vsftpd.conf

添加以下几行

userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list

解释:userlist_file是用文件地址

userlist_enable=YES表示是否开启用户用户列表也能,如果设置为YES就会读取userlist_file文件内容,但只此刻什么事都都不做。

userlist_deny表示允许或者拒绝,若果设置为userlist_deny=NO表示若设为NO
, 则只有在/etc/vsftpd.user_list
中的使用者才能登入,而且此项功能可以在询问密码前就出现错误讯息,而不需要检验密码的程序。
若果设置为userlist_deny=YES,表示在userlist的用户不能登录

10.如何上匿名访问、上传,并支持下载和执行?

在默认的情况下,vsftp是不支持匿名用户的访问的,所以我们要自己打开相应的选项。现在我针对这个问题,我们要打开如下的选项。

anonymous_enable=YES 注:允许匿名访问
anon_upload_enable=YES 注:允许上传
anon_mkdir_write_enable=YES 注:允许建立相应的目录
anon_umask=022 把上传到FTP的文件或者目录改变权限

当然打开这些选项还是不行的,我们还要让匿名写入文件的上一级目录有写入权,以我所做的FTP为例,我所做的FTP的匿名访问的目录是/var
/ftp,在vsFTPd中,/var/ftp这个目录是不能让匿名用户有写入权限的,这是为了安全考虑,所以我们必须自己在/var/ftp目录中建一
个目录,让这个目录有写入权。

比如:我在/var/ftp目录建一个upload目录,然后把它的权限设置成777,这样匿名用户就能写入了。

#mkdir /var/ftp/upload
#chmod 777 /var/ftp/upload

改了一系列的文件,不要忘记重启vsFTPd服务器

11.如何解决vsftp上传的文件与apache或者nginx的权限问题

这个问题不少人问,但是回答的很少,这里我给一个的回答

vi /etc/vsftpd.conf

找到#local_umask=022把前面的#去掉

重启服务器试试

具体各项代表什么意思,抄录一段台湾人的

設定值 結果 代表的使用權限
666 002 664 rw-rw-r--
666 022 644 rw-r--r--
666 037 640 rw-r-----
666 077 600 rw-------

目錄權限的最大值

設定值 結果 代表的使用權限
777 002 775 rwxrwxr-x
777 022 755 rwxr-xr-x
777 037 740 rwxr-----
777 077 700 rwx------

原文:Debian上配置vsftpd若干问题集锦

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图