小编Cas*_*lia的帖子

为什么vsftpd的chroot_local_user不安全?

我在我的 VPS 上设置了 vsftpd,我不希望用户被允许离开他们的 ftp 主目录。我使用的是 local_user ftp,而不是匿名的,所以我补充说:

chroot_local_user=是

我在很多论坛帖子中都读过,这是不安全的。

  1. 为什么这是不安全的?
  2. 如果因为使用 ssh 加入我的 VPS 而这不安全,那么我可以将这些用户从 sshd 中锁定,对吗?
  3. 是否有其他选择来实现 vsftpd 的这种行为?(我不想删除系统上“world”的所有文件夹/文件的读取权限)

linux vps centos ftp vsftpd

22
推荐指数
2
解决办法
3万
查看次数

vsFTPd 在 Ubuntu 上的默认上传文件权限不起作用

我有一台运行Ubuntu 12.10 x64的服务器,以及最新版本的 vsFTPd。

我的用户example.com有其主文件夹设置上/var/www/example.com

我在里面创建了一个 public_html 文件夹并赋予777它权限,并删除了家庭用户文件夹的写入权限。一切正常,但是:

我通过 FTP(使用 SmartFTP)上传的每个文件的 chmod 都为 0。

vsftpd.conf只有一行相关:

local_umask=022.
Run Code Online (Sandbox Code Playgroud)

我尝试更改为:

file_open_mode=777
local_umask=002
Run Code Online (Sandbox Code Playgroud)

所以我的文件会775在上传后立即得到。

但只有我上传的文件夹才能获得775权限。

我上传的文件得到 1411 permissions

有人可以帮我解决这个问题吗?

ubuntu ftp chmod vsftpd

16
推荐指数
2
解决办法
6万
查看次数

通过 VSFTPD 创建的文件的默认所有者/权限

如何将创建的目录和文件的默认值设置为 775 ?我的理解是我需要修改VSFTPD上的umask,但是我怎么知道要改成什么?

ftp umask vsftpd

15
推荐指数
2
解决办法
10万
查看次数

VSFTPD 530 登录不正确

我正在尝试在 CentOS 5.3 x64 上设置 vsftpd 服务器。我无法让任何本地用户登录工作。这是我的 vsftpd.conf:

local_enable=YES
write_enable=YES
pam_service_name=vsftpd
connect_from_port_20=YES
listen=YES
pam_service_name=vsftpd
xferlog_std_format=NO
log_ftp_protocol=YES
chroot_local_user=YES
Run Code Online (Sandbox Code Playgroud)

这是 vsftp.log 的输出:

Mon Sep 13 23:34:44 2010 [pid 19243] CONNECT: Client "10.0.1.138"
Mon Sep 13 23:34:44 2010 [pid 19243] FTP response: Client "10.0.1.138", "220 (vsFTPd 2.0.5)"
Mon Sep 13 23:34:44 2010 [pid 19243] FTP command: Client "10.0.1.138", "USER dwelch"
Mon Sep 13 23:34:44 2010 [pid 19243] [dwelch] FTP response: Client "10.0.1.138", "331 Please specify the password."
Mon Sep 13 23:34:44 2010 [pid …
Run Code Online (Sandbox Code Playgroud)

centos ftp vsftpd

13
推荐指数
2
解决办法
5万
查看次数

FTP 不允许 /usr/sbin/nologin 用户

我想为几个 ftp-only 用户设置一个 ftp vsftpd。我配置了 FTP 以启用本地用户访问。它工作正常。但是一旦我将用户的 shell 编辑为/usr/sbin/nologin,它就无法登录到 FTP 并出现以下错误:

Response:   220 Welcome to the Scent Library's File Service.
Command:    USER marketftp
Response:   331 Please specify the password.
Command:    PASS ******
Response:   530 Login incorrect.
Run Code Online (Sandbox Code Playgroud)

这是我所做的:

  • 所有 ftp-only 用户都将/srv/ftp作为他们的主目录。目录信息是

    /srv/ftp: drwxr-xr-x 3 root slftp 4.0K 2012-02-09 17:20 ftp/

  • 所有 ftp-only 用户都将在该组中slftp

    我创建了用户adduser并最终得到了这个/etc/passwd条目:marketftp:x:1001:1001::/srv/ftp:/usr/sbin/nologin

    这在/etc/groupslftp:x:1001:marketftp

  • vsftpd与下列配置为限制用户自己的家,除了在本地用户vsftpd.chroot_list

    chroot_local_user=YES
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd.chroot_list
    
    Run Code Online (Sandbox Code Playgroud)

我的问题在哪里?由于普通本地用户可以登录FTP,所以连接正常。但是为什么只有 ftp 的用户不能登录?

linux ftp users vsftpd

13
推荐指数
2
解决办法
3万
查看次数

vsftpd - local_root=/var/www/sites/$USER 没有得到解释?

当我尝试连接到 FTP 服务器时,我得到: “500 OOPS:无法更改目录:/home/$USER/public_html”

  • 当我 echo $USER - 我得到正确的用户名
  • 似乎在我的 /etc/vsftpd.conf 中没有解释 $USER
  • 当我删除“local_root=/var/www/sites/$USER”时,我一切正常。

我正在运行 vsftpd 2.2.2 和 Ubuntu 10.04.1 LTS 版本:10.04 代号:lucid

linux ftp settings vsftpd

12
推荐指数
2
解决办法
4万
查看次数

我可以将 VSFTPD 配置为仅侦听本地主机吗?

我有一个需要 FTP 且无法执行 SFTP 的旧版应用程序。

我的解决办法是:

  • 使用 VSFTPD 放置一个 FTP 服务器
  • 将防火墙配置为仅接受来自本地主机的端口 21 连接
  • 使用旧版应用程序从客户端设置 SSH 连接
  • 通过 SSH 隧道传输 FTP

我想知道我是否可以将 VSFTPD 配置为除了防火墙之外忽略来自除本地主机之外的任何地方的连接。腰带和护腕都有。

ssh ftp sftp ssh-tunnel vsftpd

12
推荐指数
1
解决办法
2万
查看次数

vsftpd - PAM - MySQL 和 pam_mkhomedir 创建目录

我已经成功地将 vsftpd 与通过 PAM 连接到我的 mysql 数据库的虚拟用户一起使用。现在我想通过成功的 vsftpd 连接自动创建用户目录。

这是 /etc/pam.d/vsftpd 配置:

#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
auth required pam_mysql.so verbose=1 user=root passwd=mypass host=localhost db=mydb table=mytable usercolumn=username passwdcolumn=password crypt=3
account required pam_mysql.so verbose=1 user=root passwd=mypass host=localhost db=mydb table=mytable usercolumn=username passwdcolumn=password crypt=3
session required pam_mkhomedir.so skel=/home/skel/ umask=0022 debug
Run Code Online (Sandbox Code Playgroud)

现在添加 pam_mkhomedir 只是表明它无法创建目录,任何日志中都没有其他消息。所以它显然不适用。还有什么我需要的吗?

我的/etc/vsftpd/vsftpd.conf:

# No ANONYMOUS users allowed
anonymous_enable=NO
# Allow 'local' users with WRITE permissions (0755)
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=NO
xferlog_enable=YES
connect_from_port_20=YES

# define a unique user on your system …
Run Code Online (Sandbox Code Playgroud)

mysql permissions ftp pam vsftpd

11
推荐指数
1
解决办法
2612
查看次数

如何为 vsftpd 用户的上传设置默认组?(Ubuntu 10.04)

如何为 vsftpd 用户的上传设置默认组?

当我上传文件时,文件组设置为用户名...如何让它自动设置为特定组?

ubuntu permissions ftp groups vsftpd

10
推荐指数
1
解决办法
1万
查看次数

为什么 getfattr 不显示设置了扩展属性位的文件的任何内容?

我有一个在 CentOS 6.2 上运行的 Nagios XI 安装,并且想要修改备份脚本。我注意到为这个 shell 脚本设置了扩展属性位,所以我想确保在更改它时不会弄乱任何东西。我进行了试验,发现“cp -p”不保留此设置(请参阅有关此更新的评论)。我是 Linux 上扩展属性的新手,发现有一个命令 'getfattr' 应该显示扩展属性,但是它不显示此文件的任何内容。

cd /usr/local/nagiosxi/scripts
ll backup_xi.sh
-rwxr-x---.  1 nagios nagios   2757 Jul  3 10:03 backup_xi.sh*

# nothing is displayed by 'getfattr':
getfattr -d backup_xi.sh

# and nothing special seems to be present according to 'getfacl':
getfacl backup_xi.sh
# file: backup_xi.sh
# owner: nagios
# group: nagios
user::rwx
group::r-x
other::---
Run Code Online (Sandbox Code Playgroud)

最终,我的目标是修改文件,同时保留原始产品安装期间设置的任何属性。是否有设置扩展属性位的原因,即使根据 getfattr 显然没有任何属性?

files centos nagios attributes

10
推荐指数
1
解决办法
6124
查看次数

标签 统计

ftp ×9

vsftpd ×9

centos ×3

linux ×3

permissions ×2

ubuntu ×2

attributes ×1

chmod ×1

files ×1

groups ×1

mysql ×1

nagios ×1

pam ×1

settings ×1

sftp ×1

ssh ×1

ssh-tunnel ×1

umask ×1

users ×1

vps ×1