SELinux/ftpd

From FedoraProject

ftpd_selinux(8) ftpd Selinux Policy documentation ftpd_selinux(8)
NAME
ftpd_selinux - Security Enhanced Linux Policy for the ftp daemon
DESCRIPTION
Security-Enhanced Linux secures the ftpd server via flexible mandatory
access control.
FILE_CONTEXTS
SELinux requires files to have an extended attribute to define the file
type. Policy governs the access daemons have to these files. If you
want to share files anonymously, you must label the files and directo-
ries public_content_t. So if you created a special directory /var/ftp,
you would need to label the directory with the chcon tool.
chcon -R -t public_content_t /var/ftp
If you want to setup a directory where you can upload files to you must
label the files and directories ftpd_anon_rw_t. So if you created a
special directory /var/ftp/incoming, you would need to label the direc-
tory with the chcon tool.
chcon -t public_content_rw_t /var/ftp/incoming
You must also turn on the boolean allow_ftpd_anon_write.
setsebool -P allow_ftpd_anon_write=1
If you want to make this permanant, i.e. survive a relabel, you must
add an entry to the file_contexts.local file.
/etc/selinux/POLICYTYPE/contexts/files/file_contexts.local
/var/ftp(/.*)? system_u:object_r:public_content_t
/var/ftp/incoming(/.*)? system_u:object_r:public_content_rw_t
BOOLEANS
SELinux ftp daemon policy is customizable based on least access
required. So by default SElinux does not allow users to login and read
their home directories.
If you are setting up this machine as a ftpd server and wish to allow
users to access their home directorories, you need to set the
ftp_home_dir boolean.
setsebool -P ftp_home_dir 1
ftpd can run either as a standalone daemon or as part of the xinetd
domain. If you want to run ftpd as a daemon you must set the
ftpd_is_daemon boolean.
setsebool -P ftpd_is_daemon 1
You can disable SELinux protection for the ftpd daemon by executing:
setsebool -P ftpd_disable_trans 1
service vsftpd restart
system-config-securitylevel is a GUI tool available to customize
SELinux policy settings.
AUTHOR
This manual page was written by Dan Walsh <dwalsh@redhat.com>.
SEE ALSO
selinux(8), ftpd(8), chcon(1), setsebool(8)
dwalsh@redhat.com 17 Jan 2005 ftpd_selinux(8)