Tante_Emma: Fedora 10, Proftpd, Apache, SELinux

Hallo,

ich habe ein System:
$ uname -r
2.6.27.9-159.fc10.i686

$ proftpd -v
 - ProFTPD Version 1.3.1

$ httpd -v
Server version: Apache/2.2.10 (Unix)
Server built:   Oct 21 2008 07:51:36

$ rpm -qa | grep selinux
selinux-policy-targeted-3.5.13-34.fc10.noarch
libselinux-devel-2.0.73-1.fc10.i386
selinux-policy-3.5.13-34.fc10.noarch
libselinux-2.0.73-1.fc10.i386
libselinux-utils-2.0.73-1.fc10.i386
libselinux-python-2.0.73-1.fc10.i386

Ich habe das Problem das ich keinen Zugriff auf irgendeinen Proftpd account bekomme.
Mein Setroubleshoot Browser beschwert sich auch immer wenn jemand auf einen Account zugreifen möchte. Einige der Accounts sind zum Verwalten von Webspaceordnern gedacht, also Ordner wo auch Webseiten drinliegen die Apache verschickt. Das funktioniert einwandfrei.
Nur es kann sich niemand einloggen weil mein System das jedem verbietet.

D.h. Das einloggen geht soweit, nur wenn der Client LIST anfordert, gibt der Client ein wenig später aus "Fehler: Zeitüberschreitung der Verbindung"
"Fehler: Verzeichnisinhalt konnte nicht empfangen werden."

Mein Setroubleshoot-Browser sagt folgendes:

Zusammenfassung:

SELinux hindert den FTP-Dameon am Schreiben von Dateien ausserhalb des
Benutzerverzeichnisses (<Unknown>).

Detaillierte Beschreibung:

[SELinux ist im permissive Modus. Der Betrieb würde verweigert werden, wurde
aber durch den permissive Modus erlaubt.]

SELinux verweigerte dem FTP-Daemon den Schreibzugriff auf Stammverzeichnisse der
Benutzer (<Unknown>). Jemand versuchte, sich via Ihrem ftp-Daemon einzuloggen
und eine Datei anzulegen oder zu schreiben. Falls Sie ftp lediglich mit
anonymous ftp konfigurierten, könnte dies einen Einbruchsversuch signalisieren.

Zugriff erlauben:

Falls SELinux ftpd nicht am Schreiben von Dateien auf dem System hindern soll,
müssen Sie den allow_ftpd_full_access Boolesch: "setsebool -P
allow_ftpd_full_access=1" aktivieren.

Fixer Befehl:

setsebool -P allow_ftpd_full_access=1

Zusätzliche Informationen:

Quellkontext                  system_u:system_r:ftpd_t:s0
Zielkontext                   system_u:system_r:ftpd_t:s0
Zielobjekte                   None [ key ]
Quelle                        proftpd
Quellen-Pfad                  /usr/sbin/proftpd
Port                          <Unbekannt>
Host                          pub.jv
Quellen-RPM-Pakete            proftpd-1.3.1-6.fc10
Ziel-RPM-Pakete
RPM-Richtlinie                selinux-policy-3.5.13-34.fc10
SELinux aktiviert             True
Richtlinienversion            targeted
MLS aktiviert                 True
Enforcing-Modus               Permissive
Plugin-Name                   allow_ftpd_full_access

Raw-Audit-Meldungen

node=localhost type=AVC msg=audit(1231176771.720:290): avc:  denied  { write } for  pid=3251 comm="proftpd" scontext=system_u:system_r:ftpd_t:s0 tcontext=system_u:system_r:ftpd_t:s0 tclass=key

node=localhost type=SYSCALL msg=audit(1231176771.720:290): arch=40000003 syscall=288 success=yes exit=0 a0=3 a1=325a8063 a2=1fa a3=1f5 items=0 ppid=1 pid=3251 auid=506 uid=0 gid=501 euid=506 suid=506 fsuid=506 egid=501 sgid=501 fsgid=501 tty=(none) ses=32 comm="proftpd" exe="/usr/sbin/proftpd" subj=system_u:system_r:ftpd_t:s0 key=(null)

Aber der nette Hinweis

"setsebool -P allow_ftpd_full_access=1"

habe ich doch schon längst beherzigt. Aber das bringt keine Änderung, wie man in der Meldung sieht habe ich SELinux sogar auf permissive gesetzt. Aber deswegen wird das ganz immer noch blockiert?
Ich kenne mich auch wirklich nicht aus mit SELinux.

Die proftpd.conf habe ich 1:1 auf einem anderen Server schon erfolgreich eingesetzt (f9).

Wo ist der Fehler? Was muss ich ändern?

Tante_Emma

  1. Ich danke allen.
    Das Problem habe ich nun gelöst.

    Tante_Emma

    [Thread closed]