AppArmor - mal wieder (OS 13.1, AppArmor, Samba)
Hallo, nachdem ich gerade meine dovecot Probleme auf AppArmor zurückführen konnte (und lösen konnte) nun das nächste Problemkind: Samba. :-( Installiert ist OS 13.1 64bit, samba 4.1.3. Ich habe am WE (als die Telefone meiner Mädels konfigurieren wollte) über eine Stunde gesucht, warum meine virtuelle Maschine auf keine Laufwerke des Servers mehr zugreifen konnte - gelöst habe ich das dann (mal wieder) durch Abschalten von AppArmor. Erinnert habe ich mich dann daran, dass ich "damals" bei meinen Gehversuchen mit AppArmor jeden "share" einzeln eintragen musste (irgendwo). Beim suchen bin ich dann über /etc/apparmor.d/*smb* auf die Pendants in /etc/apparmor.d/local getroffen; allerdings steht da in usr.sbin.smbd-shares: --- cut here --- # This file will be replaced by rules for all samba shares at samba start. # Do not edit! --- cut here --- Und in /etc/apparmor.d/usr.sbin.smbd finde ich: --- cut here --- # permissions for all configured shares # autogenerated by update-apparmor-samba-profile at samba start #include <local/usr.sbin.smbd-shares> --- cut here --- Problem: das klappt hier nicht. Ein update-apparmor-samba-profile finde ich in /usr/share/samba - beim Starten von samba wird aber irgendwie nichts an der Datei local/usr.sbin.smbd-shares geändert - der Zeitstempel ist noch der "original" Timestamp. Was läuft hier schief bzw. wo muss ich was ändern, damit das funktioniert? (Im Moment ist AppArmor mal wieder abgeschaltet - so geht's zumindest) Andreas -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo Andreas, hallo Leute, Am Montag, 10. März 2014 schrieb Kyek, Andreas, Vodafone DE:
nachdem ich gerade meine dovecot Probleme auf AppArmor zurückführen konnte (und lösen konnte) nun das nächste Problemkind: Samba. :-(
Installiert ist OS 13.1 64bit, samba 4.1.3.
Ich habe am WE (als die Telefone meiner Mädels konfigurieren wollte) über eine Stunde gesucht, warum meine virtuelle Maschine auf keine Laufwerke des Servers mehr zugreifen konnte - gelöst habe ich das dann (mal wieder) durch Abschalten von AppArmor.
Erinnert habe ich mich dann daran, dass ich "damals" bei meinen Gehversuchen mit AppArmor jeden "share" einzeln eintragen musste (irgendwo). Beim suchen bin ich dann über /etc/apparmor.d/*smb* auf die Pendants in /etc/apparmor.d/local getroffen; allerdings steht da in usr.sbin.smbd-shares:
--- cut here --- # This file will be replaced by rules for all samba shares at samba start. # Do not edit! --- cut here ---
Ja, genau so ist das gedacht - und hat bisher[tm] auch immer funktioniert.
Problem: das klappt hier nicht. Ein update-apparmor-samba-profile finde ich in /usr/share/samba - beim Starten von samba wird aber irgendwie nichts an der Datei local/usr.sbin.smbd-shares geändert - der Zeitstempel ist noch der "original" Timestamp.
Zeig mal die Ausgabe von "rcsmb status". Außerdem wäre ein manueller Aufruf von update-apparmor-samba-profile (als root) einen Versuch wert. Stehen anschließend in usr.sbin.smbd- shares die Berechtigungen für alle Shares? Das löst zwar das Problem nicht wirklich, grenzt es aber ein und ist erstmal ein Workaround ;-)
Was läuft hier schief bzw. wo muss ich was ändern, damit das funktioniert? (Im Moment ist AppArmor mal wieder abgeschaltet - so geht's zumindest)
Gewöhn Dir lieber den Complain Mode (aa-complain) an - der bewirkt ebenfalls "geht zumindest" und schreibt nebenbei noch fleißig Logs mit. Apropos Logs - falls es nach manuellem Aufruf von update-apparmor-samba- profile immer noch nicht geht, weißt Du ja inzwischen, welche Logs mich interessieren ;-) Gruß Christian Boltz -- [PDF] Fipptehler korrigiert -- wie konnten wir das bisher uebersehen ;) - <xsl:if test="position()=1">Schüsselworte: </xsl:if> + <xsl:if test="position()=1">Schlüsselworte: </xsl:if> [David Haller in suse-linux-faq] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Christian wrote:
Hallo Andreas, hallo Leute,
Am Montag, 10. März 2014 schrieb Kyek, Andreas, Vodafone DE:
nachdem ich gerade meine dovecot Probleme auf AppArmor zurückführen konnte (und lösen konnte) nun das nächste Problemkind: Samba. :-(
Installiert ist OS 13.1 64bit, samba 4.1.3.
Ich habe am WE (als die Telefone meiner Mädels konfigurieren wollte) über eine Stunde gesucht, warum meine virtuelle Maschine auf keine Laufwerke des Servers mehr zugreifen konnte - gelöst habe ich das dann (mal wieder) durch Abschalten von AppArmor.
Erinnert habe ich mich dann daran, dass ich "damals" bei meinen Gehversuchen mit AppArmor jeden "share" einzeln eintragen musste (irgendwo). Beim suchen bin ich dann über /etc/apparmor.d/*smb* auf die Pendants in /etc/apparmor.d/local getroffen; allerdings steht da in usr.sbin.smbd-shares:
--- cut here --- # This file will be replaced by rules for all samba shares at samba start. # Do not edit! --- cut here ---
Ja, genau so ist das gedacht - und hat bisher[tm] auch immer funktioniert.
Problem: das klappt hier nicht. Ein update-apparmor-samba-profile finde ich in /usr/share/samba - beim Starten von samba wird aber irgendwie nichts an der Datei local/usr.sbin.smbd-shares geändert - der Zeitstempel ist noch der "original" Timestamp.
Zeig mal die Ausgabe von "rcsmb status".
Ha ha ha!!! server:/ # rcsmb status -bash: /usr/sbin/rcsmb: Permission denied server:/ # ls -l /usr/sbin/rcsmb lrwxrwxrwx 1 root root 33 Feb 27 07:07 /usr/sbin/rcsmb -> ../lib/systemd/system/smb.service server:/ # ls -l /usr/lib/systemd/system/smb.service -rw-r--r-- 1 root root 369 Dec 11 11:42 /usr/lib/systemd/system/smb.service server:/ # systemctl status smb smb.service - Samba SMB Daemon Loaded: loaded (/usr/lib/systemd/system/smb.service; enabled) Active: active (running) since Sat 2014-03-08 18:29:18 CET; 1 day 19h ago Process: 25504 ExecStart=/usr/sbin/smbd $SMBDOPTIONS (code=exited, status=0/SUCCESS) Main PID: 25505 (smbd) CGroup: /system.slice/smb.service 25505 /usr/sbin/smbd 25508 /usr/sbin/smbd Mar 08 18:29:18 server smbd[25504]: [2014/03/08 18:29:18.337109, 0] ../source3/smbd/server.c:1278(main) Mar 08 18:29:18 server smbd[25504]: standard input is not a socket, assuming -D option Mar 08 18:29:18 server systemd[1]: Started Samba SMB Daemon. Oder was genau wolltest Du sehen??
Außerdem wäre ein manueller Aufruf von update-apparmor-samba-profile (als root) einen Versuch wert. Stehen anschließend in usr.sbin.smbd- shares die Berechtigungen für alle Shares? Das löst zwar das Problem nicht wirklich, grenzt es aber ein und ist erstmal ein Workaround ;-)
Yepp: nach aktivieren von apparmor; restart von smb lieferte ein Aufruf von update... eine angepasste usr.sbin.smbd-shares. Ob der Zugriff jetzt funktioniert kann aber frühestens heute abend testen.
Was läuft hier schief bzw. wo muss ich was ändern, damit das funktioniert? (Im Moment ist AppArmor mal wieder abgeschaltet - so geht's zumindest)
Gewöhn Dir lieber den Complain Mode (aa-complain) an - der bewirkt ebenfalls "geht zumindest" und schreibt nebenbei noch fleißig Logs mit.
Hast ja recht - aber nach 1 Stunde und der quengelnden Kurzen hinter dir ist dir die einfachste Lösung immer die beste! Jetzt aber doch eine Frage: Wer zum Henker startet dieses Update skript denn überhaubt? Der smbd wird ja von systemd gestartet - im Konfigfile /usr/lib/systemd/system/smb.service finde ich da nichts von - woher soll der systemd das Skript also kennen? Andreas -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo Andreas, hallo Leute, Am Montag, 10. März 2014 schrieb Kyek, Andreas, Vodafone DE:
Christian wrote:
Am Montag, 10. März 2014 schrieb Kyek, Andreas, Vodafone DE: ...
Problem: das klappt hier nicht. Ein update-apparmor-samba-profile finde ich in /usr/share/samba - beim Starten von samba wird aber irgendwie nichts an der Datei local/usr.sbin.smbd-shares geändert - der Zeitstempel ist noch der "original" Timestamp.
Zeig mal die Ausgabe von "rcsmb status".
Ha ha ha!!!
server:/ # rcsmb status -bash: /usr/sbin/rcsmb: Permission denied server:/ # ls -l /usr/sbin/rcsmb lrwxrwxrwx 1 root root 33 Feb 27 07:07 /usr/sbin/rcsmb -> ../lib/systemd/system/smb.service server:/
Das ist https://bugzilla.novell.com/show_bug.cgi?id=856759 - scheinbar gab es dafür noch kein Update für 13.1 :-/ (der Symlink sollte auf /sbin/service oder /usr/sbin/service zeigen)
# systemctl status smb smb.service - Samba SMB Daemon Loaded: loaded (/usr/lib/systemd/system/smb.service; enabled) Active: active (running) since Sat 2014-03-08 18:29:18 CET; 1 day ... Oder was genau wolltest Du sehen??
Genau das, danke.
Außerdem wäre ein manueller Aufruf von update-apparmor-samba-profile (als root) einen Versuch wert. Stehen anschließend in usr.sbin.smbd- shares die Berechtigungen für alle Shares? Das löst zwar das Problem nicht wirklich, grenzt es aber ein und ist erstmal ein Workaround ;-)
Yepp: nach aktivieren von apparmor; restart von smb lieferte ein Aufruf von update... eine angepasste usr.sbin.smbd-shares.
Gut für Dich. Weniger gut für Lars - der hat gerade einen "netten" Bugreport von mir bekommen. Kurzfassung: Das "alte" Initscript hat update-apparmor-samba-profile automatisch aufgerufen. Das neue smb.service sollte ;-) das auch tun... -> https://bugzilla.novell.com/show_bug.cgi?id=867665
Ob der Zugriff jetzt funktioniert kann aber frühestens heute abend testen.
Ich bin mir ziemlich sicher, dass es jetzt geht. Das einzige, das mich etwas wundert, ist, dass dieses Problem so lange unentdeckt geblieben ist. (Eine mögliche Ursache dafür könnte sein, dass beim Update von einer älteren openSUSE-Version "aus historischen Gründen"[tm] noch ein funktionierendes AppArmor-Schnipsel vorhanden ist.)
Was läuft hier schief bzw. wo muss ich was ändern, damit das funktioniert? (Im Moment ist AppArmor mal wieder abgeschaltet - so geht's zumindest)
Gewöhn Dir lieber den Complain Mode (aa-complain) an - der bewirkt ebenfalls "geht zumindest" und schreibt nebenbei noch fleißig Logs mit. Hast ja recht - aber nach 1 Stunde und der quengelnden Kurzen hinter dir ist dir die einfachste Lösung immer die beste!
;-)
Jetzt aber doch eine Frage: Wer zum Henker startet dieses Update skript denn überhaubt? Der smbd wird ja von systemd gestartet - im Konfigfile /usr/lib/systemd/system/smb.service finde ich da nichts von - woher soll der systemd das Skript also kennen?
Genau das ist das Problem - smb.service müsste[tm] es machen. (Die Details habe ich oben schon geschrieben.) Gruß Christian Boltz -- ["Hallo Welt"-Programm] Und nicht, dass mir jemand die Source klaut. Die steht nicht unter der GPL und wird für Milliarden verkauft. ;) [patrick dahl in suse-linux] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Kyek, Andreas wrote:
Christian wrote:
Hallo Andreas, hallo Leute, [...] Außerdem wäre ein manueller Aufruf von update-apparmor-samba-profile (als root) einen Versuch wert. Stehen anschließend in usr.sbin.smbd- shares die Berechtigungen für alle Shares? Das löst zwar das Problem nicht wirklich, grenzt es aber ein und ist erstmal ein Workaround ;-)
Yepp: nach aktivieren von apparmor; restart von smb lieferte ein Aufruf von update... eine angepasste usr.sbin.smbd-shares.
Ob der Zugriff jetzt funktioniert kann aber frühestens heute abend testen.
Und Nachtrag - er hat funktioniert. Problem gelöst. Danke für deine Hilfe (ich warte dann auf den Patch für samba) Andreas -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (2)
-
Christian Boltz
-
Kyek, Andreas, Vodafone DE