forked from mirrors/nixpkgs
Fixing vsftpd without anonymous users, adding localUsers, and creating chroot path.
svn path=/nixos/trunk/; revision=14286
This commit is contained in:
parent
51078ac5b7
commit
632d77806f
3 changed files with 24 additions and 2 deletions
|
@ -1847,6 +1847,13 @@ in
|
||||||
";
|
";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
localUsers = mkOption {
|
||||||
|
default = false;
|
||||||
|
description = "
|
||||||
|
Whether to enable FTP for the local users.
|
||||||
|
";
|
||||||
|
};
|
||||||
|
|
||||||
writeEnable = mkOption {
|
writeEnable = mkOption {
|
||||||
default = false;
|
default = false;
|
||||||
description = "
|
description = "
|
||||||
|
|
|
@ -308,7 +308,7 @@ let
|
||||||
++ optional config.services.vsftpd.enable
|
++ optional config.services.vsftpd.enable
|
||||||
(import ../upstart-jobs/vsftpd.nix {
|
(import ../upstart-jobs/vsftpd.nix {
|
||||||
inherit (pkgs) vsftpd;
|
inherit (pkgs) vsftpd;
|
||||||
inherit (config.services.vsftpd) anonymousUser
|
inherit (config.services.vsftpd) anonymousUser localUsers
|
||||||
writeEnable anonymousUploadEnable anonymousMkdirEnable;
|
writeEnable anonymousUploadEnable anonymousMkdirEnable;
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ vsftpd, anonymousUser
|
{ vsftpd, anonymousUser, localUsers
|
||||||
, anonymousUploadEnable, anonymousMkdirEnable, writeEnable
|
, anonymousUploadEnable, anonymousMkdirEnable, writeEnable
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
@ -42,6 +42,13 @@ start script
|
||||||
"anonymous_enable=YES"
|
"anonymous_enable=YES"
|
||||||
else
|
else
|
||||||
"anonymous_enable=NO") +
|
"anonymous_enable=NO") +
|
||||||
|
(if localUsers then
|
||||||
|
"
|
||||||
|
local_enable=YES"
|
||||||
|
else
|
||||||
|
"
|
||||||
|
local_enable=NO"
|
||||||
|
) +
|
||||||
(if writeEnable then
|
(if writeEnable then
|
||||||
"
|
"
|
||||||
write_enable=YES"
|
write_enable=YES"
|
||||||
|
@ -70,8 +77,16 @@ nopriv_user=vsftpd
|
||||||
secure_chroot_dir=/var/ftp/empty
|
secure_chroot_dir=/var/ftp/empty
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
" +
|
||||||
|
(if anonymousUser then
|
||||||
|
"
|
||||||
mkdir -p /home/ftp &&
|
mkdir -p /home/ftp &&
|
||||||
chown -R ftp:ftp /home/ftp
|
chown -R ftp:ftp /home/ftp
|
||||||
|
"
|
||||||
|
else "") +
|
||||||
|
"
|
||||||
|
mkdir -p /var/ftp/empty &&
|
||||||
|
chown vsftpd /var/ftp/empty
|
||||||
end script
|
end script
|
||||||
|
|
||||||
respawn ${vsftpd}/sbin/vsftpd /etc/vsftpd.conf
|
respawn ${vsftpd}/sbin/vsftpd /etc/vsftpd.conf
|
||||||
|
|
Loading…
Add table
Reference in a new issue