Difference between revisions of "Opsi (open pc server integration)"

From Univention Wiki

Jump to: navigation, search
m (Kategorie)
Line 38: Line 38:
 
  univention-run-join-scripts
 
  univention-run-join-scripts
  
== Hinweise ==
+
== Hinweise / Ergänzungen ==
 +
 
 +
=== UCS TCS / UCS Netinstaller ===
  
 
Der von OPSI für PXE-Installationen von Windows-Systemen genutzte PXE-Dienst kollidiert mit dem von UCS für Thin Clients und PXE Serverinstallationen eingesetzten "atftp". Die Dienste müssen daher auf unterschiedlichen Serversysytemen der UCS-Umgebung installiert werden.
 
Der von OPSI für PXE-Installationen von Windows-Systemen genutzte PXE-Dienst kollidiert mit dem von UCS für Thin Clients und PXE Serverinstallationen eingesetzten "atftp". Die Dienste müssen daher auf unterschiedlichen Serversysytemen der UCS-Umgebung installiert werden.
Line 48: Line 50:
 
  opsi-admin -d task setPcpatchPassword
 
  opsi-admin -d task setPcpatchPassword
 
</code>
 
</code>
 +
 +
=== OPSI Hostkey ===
 +
 +
OPSI verwendet intern einen eindeutigen HostKey zur Identifikation von Rechnern. Dieser ist auch am Recherobjetk im LDAP abgespeichert, wird aber von den Standard-Integrationspaketen nicht angezeigt.
 +
 +
Wird OPSI nachträglich für bestehende UCS-Umgebungen installiert erfolgt der Rollout des OPSI Prelogin-Loaders auf bestehenden Windows-Rechnern meist manuell. Im Laufe der Installation kontaktiert der Windows-Rechner dann den OPSI Config-Server, dabei wird auch der HostKey generiert.
 +
 +
Möchte man aber in UCS bestehende Systeme über OPSI neu installieren muss diesen ein OPSI Hostkey zugeordnet werden. Dazu kann der HostKey über ein Extended Attribute im UDM angezeigt werden:
 +
 +
eval $(ucr shell)
 +
# Host ID (wurde in einigen OPSI-Versionen bereits angelegt)
 +
univention-directory-manager settings/extended_attribute create \
 +
              --ignore_exists \
 +
              --position "cn=custom attributes,cn=univention,$ldap_base" \
 +
              --set "name=opsiHostId" --set "module=computers/windows" \
 +
              --set "objectClass=opsiClient" --set "shortDescription=opsi id" \
 +
              --set "CLIName=opsiHostId" --set "tabName=opsi" \
 +
              --set "mayChange=1" \
 +
              --set "ldapMapping=opsiHostId"
 +
 +
# Host Key
 +
univention-directory-manager settings/extended_attribute create \
 +
              --ignore_exists \
 +
              --position "cn=custom attributes,cn=univention,$ldap_base" \
 +
              --set "name=opsiHostKey" --set "module=computers/windows" \
 +
              --set "objectClass=opsiClient" --set "shortDescription=opsi key" \
 +
              --set "CLIName=opsiHostKey" --set "tabName=opsi" \
 +
              --set "mayChange=1" \
 +
              --set "ldapMapping=opsiHostKey"
 +
 +
 +
Damit können dann HostKey und HostID im UDM geprüft werden. Der UDM erlaubt auch ein Modifizieren, dies sollte immer OPSI-Konform (im Zweifel also über die Admin-Tools von OPSI) erfolgen. Als Beispiel kann für Rechner mit bestehender OpsiId ein fehlender OpsiHostKey gesetzt werden, das Generieren des HostKey wird dabei durch den opsi-admin ausgeführt:
 +
 +
eval $(ucr shell)
 +
ldapsearch -x "(&(opsiHostId=*)(!(opsiHostKey=*)))" dn | \
 +
    grep ^dn |sed -e 's|dn: ||' | xargs -n 1 \
 +
    udm computers/windows modify \
 +
        --set opsiHostKey=`opsi-admin -d method generateOpsiHostKey|sed -e 's|"||g'` \
 +
        --dn
 +
 +
Alle Windows Rechner ohne Opsi HostId und HostKey können über folgendes Beispiel modifiziert werden:
 +
 +
eval $(ucr shell)
 +
ldapsearch -x "(&(objectClass=univentionWindows)(&(!(opsiHostId=*))(!(opsiHostKey=*))))" cn | \
 +
  grep ^cn|sed -e 's|cn:||' | while read hostname; do \
 +
    dn=`ldapsearch -x "(&(cn=$hostname)(objectClass=univentionWindows))" dn | grep ^dn | sed -e 's|dn: ||'`; \
 +
    udm computers/windows modify --dn "$dn" \
 +
        --set opsiHostId="$hostname.$domainname"\
 +
        --set opsiHostKey=`opsi-admin -d method generateOpsiHostKey|sed -e 's|"||g'`; \
 +
  done
  
 
== Links ==
 
== Links ==

Revision as of 07:19, 25 August 2010

Allgemeines

OPSI ist eine Softwareverteilung für Windows Arbeitsplätze und Server, veröffentlicht unter der GPL. Mit "opsi4ucs" steht eine Integration in das UCS Managementsystem zur Verfügung, die das LDAP von UCS als Backend nutzt.

Installation

UCS sollte Zugriff auf das "unmaintained"-Repository haben:

ucr set repository/online/unmaintained=yes


Für die Nutzung von OPSI sind weitere Pakete notwendig, welche erst ab UCS 2.3.2 ins Produkt geflossen sind. Somit wird für die Nutzung von UCS 2.3.0 oder 2.3.1 die Komponente "ports-lenny" benötigt:

ucr set repository/online/component/ports-lenny/parts=unmaintained \
 repository/online/component/ports-lenny/server=apt.univention.de \
 repository/online/component/ports-lenny=enabled

In die Datei "/etc/apt/sources.list" muss folgender Eintrag für den Zugriff auf das UIB-Repository ergänzt werden:

deb http://download.uib.de/debian ucs2.0 opsi3.4

Die Schritte sind auf allen Servern, auf denen OPSI-Pakete installiert werden sollen, durchzuführen.

Anschließend sind die neuen Paketquellen wie folgt einzulesen:

apt-get update


UCS Master

Auf dem UCS Master muss immer die OPSI Schemaerweiterung installiert werden:

apt-get install opsi4ucs-ldap-schema


OPSI Server

Der erste installierte OPSI-Server wird immer zum Config-Server definiert, der auch Depo-Server ist. Weitere Server können dann als reine Depotserver installiert werden.

Die Schritte zur Installation:

apt-get install opsi4ucs opsipxeconfd
univention-run-join-scripts

Hinweise / Ergänzungen

UCS TCS / UCS Netinstaller

Der von OPSI für PXE-Installationen von Windows-Systemen genutzte PXE-Dienst kollidiert mit dem von UCS für Thin Clients und PXE Serverinstallationen eingesetzten "atftp". Die Dienste müssen daher auf unterschiedlichen Serversysytemen der UCS-Umgebung installiert werden.

pcpatch-Passwort ändern

Wenn das Passwort des Benutzers pcpatch geändert werden soll, ist neben der Änderung im UDM (bzw. kpasswd, oder Samba) die Änderung im opsi-admin durchzuführen. Der Befehl hierzu ist auf dem ConfigServer auszuführen und lautet:

opsi-admin -d task setPcpatchPassword

OPSI Hostkey

OPSI verwendet intern einen eindeutigen HostKey zur Identifikation von Rechnern. Dieser ist auch am Recherobjetk im LDAP abgespeichert, wird aber von den Standard-Integrationspaketen nicht angezeigt.

Wird OPSI nachträglich für bestehende UCS-Umgebungen installiert erfolgt der Rollout des OPSI Prelogin-Loaders auf bestehenden Windows-Rechnern meist manuell. Im Laufe der Installation kontaktiert der Windows-Rechner dann den OPSI Config-Server, dabei wird auch der HostKey generiert.

Möchte man aber in UCS bestehende Systeme über OPSI neu installieren muss diesen ein OPSI Hostkey zugeordnet werden. Dazu kann der HostKey über ein Extended Attribute im UDM angezeigt werden:

eval $(ucr shell)
# Host ID (wurde in einigen OPSI-Versionen bereits angelegt)
univention-directory-manager settings/extended_attribute create \
              --ignore_exists \
              --position "cn=custom attributes,cn=univention,$ldap_base" \
              --set "name=opsiHostId" --set "module=computers/windows" \
              --set "objectClass=opsiClient" --set "shortDescription=opsi id" \
              --set "CLIName=opsiHostId" --set "tabName=opsi" \
              --set "mayChange=1" \
              --set "ldapMapping=opsiHostId"
# Host Key
univention-directory-manager settings/extended_attribute create \
              --ignore_exists \
              --position "cn=custom attributes,cn=univention,$ldap_base" \
              --set "name=opsiHostKey" --set "module=computers/windows" \
              --set "objectClass=opsiClient" --set "shortDescription=opsi key" \
              --set "CLIName=opsiHostKey" --set "tabName=opsi" \
              --set "mayChange=1" \
              --set "ldapMapping=opsiHostKey"


Damit können dann HostKey und HostID im UDM geprüft werden. Der UDM erlaubt auch ein Modifizieren, dies sollte immer OPSI-Konform (im Zweifel also über die Admin-Tools von OPSI) erfolgen. Als Beispiel kann für Rechner mit bestehender OpsiId ein fehlender OpsiHostKey gesetzt werden, das Generieren des HostKey wird dabei durch den opsi-admin ausgeführt:

eval $(ucr shell)
ldapsearch -x "(&(opsiHostId=*)(!(opsiHostKey=*)))" dn | \
   grep ^dn |sed -e 's|dn: ||' | xargs -n 1 \
   udm computers/windows modify \
       --set opsiHostKey=`opsi-admin -d method generateOpsiHostKey|sed -e 's|"||g'` \
       --dn

Alle Windows Rechner ohne Opsi HostId und HostKey können über folgendes Beispiel modifiziert werden:

eval $(ucr shell)
ldapsearch -x "(&(objectClass=univentionWindows)(&(!(opsiHostId=*))(!(opsiHostKey=*))))" cn | \
  grep ^cn|sed -e 's|cn:||' | while read hostname; do \
    dn=`ldapsearch -x "(&(cn=$hostname)(objectClass=univentionWindows))" dn | grep ^dn | sed -e 's|dn: ||'`; \
    udm computers/windows modify --dn "$dn" \
        --set opsiHostId="$hostname.$domainname"\
        --set opsiHostKey=`opsi-admin -d method generateOpsiHostKey|sed -e 's|"||g'`; \
  done

Links

Personal tools