sonnenblen.de - Das unabhängige Sun User Forum

Betriebssysteme => Solaris/x86 und OpenSolaris => Thema gestartet von: richi am 28. Februar 2007, 10:17:56

Titel: SMF und manifest
Beitrag von: richi am 28. Februar 2007, 10:17:56
Hallo Leute

Ich habe eine Frage zum manifest. Es gibt hier den Abschnitt

 <exec_method
                type='method'
                name='start'
                exec='/lib/svc/method/svc-jboss4 start'
                timeout_seconds='-1'>
                <method_context>
                        <method_credential user='jboss' group='jboss' />
                </method_context>
        </exec_method>

Die Zeile, in dem der user und die Gruppe eingetragen ist, interessiert mich.
In den meisten Scripts fehlt die Zeile ja komplett, heist das, dass dann root verwendet wird ? Außerdem ist mir aufgefallen, das bei meiner jboss
installation beim hochfahren des servers jboss auf maintance geht.
Mache ich aber anschließend ein svcadm disable svc:/jbossdienst
und dann ein svcadm enable svc:/jbossdienst, dann geht alles Problemlos.
Wenn ich aber die Zeile auf <method_credential user='root' group='root' />
abändere, dann klappt es auch beim systemstart. Habe ich dadurch irgendwelche Nachteile oder gar ein security Problem ?
Wie sollte man hier grundsätzlich vorgehen ?
Freue mich auf Antworten
LG
Richard
Titel: Re: SMF und manifest
Beitrag von: paraglider242 am 28. Februar 2007, 13:28:44
Wenn ich aber die Zeile auf <method_credential user='root' group='root' />
abändere, dann klappt es auch beim systemstart. Habe ich dadurch irgendwelche Nachteile oder gar ein security Problem ?
Wie sollte man hier grundsätzlich vorgehen ?

Generell sollte man fuer jede Applikation einen eigenen Benutzer/Gruppe verwenden, welcher nur genau die Rechte hat, die er auch benoetigt.
Nachteil der root/root-Kombination ist, falls jemand einen Exploit in jboss ausnuetzt, dass er mit hoher Wahrscheinlichkeit an root-Rechte gelangt.
Titel: Re: SMF und manifest
Beitrag von: Drusus am 03. März 2007, 15:01:50
Moin,

wenn kein <method_context> vorgegeben wird, so werden die Defaults vrwendet und das bedeutet unter anderem userid=root und dessen default-Gruppe (ergo group=root).

Wenn der Service per Default in den Maintenance Status geht (aber nach einem disable/enable wieder laeuft), so fehlen mit hoher Wahrscheinlichkeit die notwendigen Abhaengigkeiten (<dependency>) in dem Manifest. Typischer Fehler ist z.B. eine fehlende Abhaengigkeit auf die benoetigten Filesysteme (reicht filesystem/local? ist wenigstens das angeben?) oder auf den Nameservice (milestone/name-service). Was es genau ist siehst du nach dem Start wenn der Service noch im "maintenance" Status ist. Schau dir dann mal den Output von "svcs -xv" und "svcs -l" an. In letzterem findest du einen Hinweis auf das zugehoerige Logifle. Schau dort mal rein was dem Service denn fehlt.

Tschau,
  Drusus.