So erfassen Sie schnell die Welt oder verwalten ein Netzwerk von Windows-Computern mithilfe von OPSI

Haftungsausschluss:
Der Autor liebt kurze und gerade Krücken und liebt außerdem kostenlose offene Software für die Flexibilität und Skalierbarkeit, die sie bietet. Der Zweck dieses Artikels ist der Wunsch, das im russischen Internet zu Unrecht unbekannte OPSI-Software-Managementsystem (Open PC Server Integration) zu fördern und darüber zu sprechen.


Ich saß im Büro und trank Kaffee, als Ilon Mask mich anrief und mir in reinem Russisch sagte, dass es genug ist, um es bereits zu ertragen. Es ist Zeit, die besten Köpfe zu sammeln, um einen bestimmten Virus zu bekämpfen, und dafür bin ich jetzt, fünf Minuten später, da Das Büro wird 100 Computer mitbringen, die ich dringend für die Bereitstellung von Windows 10 benötige, und morgen früh werden Wissenschaftler aus aller Welt ins Büro kommen, um mit der Arbeit an dem Antivirenprogramm zu beginnen. Nun, habe ich nicht mein ganzes Leben darauf gewartet? Eine würdige Herausforderung für ein gutes Werkzeug.

Zur Implementierung des Plans verwende ich das OPSI-System - Open PC Server Integration.

OPSI ist in Deutschland in Python geschrieben und anscheinend mögen es auch Krücken, die kostenlos und skalierbar sind.

Grundlegende Systemfunktionen:

  1. Automatische Softwarebereitstellung

    So funktioniert es: Sie analysieren das Installationsprogramm und erstellen daraus das opsi-Paket, mit dem das Programm ordnungsgemäß installiert wird. Es funktioniert am besten mit MSI-Paketen, es kennt einige weitere Formate, mit denen es auch fertig wird. Es kann eine Bat-Datei oder ein Powershell-Skript ausführen, im Prinzip jedoch jeden Interpreter. Es gibt eingebaute Registrierungssysteme, im Allgemeinen vollständige Füllung, wahrscheinlich der beste Teil des Systems.
  2. Automatische Installation von Betriebssystemen

    Ich verwende nur die Installation von einem Image als die schnellste, aber es gibt Optionen für die Offline-Installation des Systems von Grund auf neu.


  3. , , , , windows. , , windows, , .
  4. Mehrere praktische Verwaltungsoberflächen mit flexiblen Integrationsoptionen

    Es gibt ein Programm mit einer grafischen Oberfläche, es gibt eine http-Oberfläche, an die Sie Befehle senden können, Sie können OPSI über die Serverkonsole steuern, Befehle in Ihre Skripte einbetten, Sie können von Python aus auf das Backend zugreifen, aber ich leider , während ich solche Magie nicht besitze.
  5. Unterstützung für mehrere Depotserver (Server, die direkt die Software enthalten, von der aus die Bereitstellung ausgeführt wird).

    Sie können jedem Subnetz oder jeder Gruppe von Computern viele Server hinzufügen, von denen jeder sein eigenes Netzwerk bedient.

Von Modulen implementierte Systemfunktionen (es gibt kostenlose und kostenpflichtige Module):

  1. LDAP-Connector (kostenpflichtig) Ein

    Connector, der eine Domain und opsi zu einem Ganzen verbindet
  2. ()

    : , ...
  3. MySQL ()

    OPSI mysql , 300
  4. Nagios ()

  5. ()

    , opsi , , .
  6. ()

    .
  7. ()

    , , , . , ansible puppet, . linux windows .
  8. WAN ()

    , .
  9. ()

  10. OTRS::ITSM ()

  11. ()

    , , , « », , .

Weitere Informationen finden Sie hier. Das

Monetarisierungsmodell lautet wie folgt: Sie verkaufen Module, bis sie den Betrag sammeln, um sie kostenlos zu machen.

Während Computer in mein Büro gebracht und zusammengebaut werden, installiere ich den AD-Server auf dem Windows-Server, erhöhe die Domäne domain.local darauf sowie DNS und DHCP.

Sie können OPSI in der Arbeitsgruppe und in der Domäne installieren. Wir werden in der Domäne installieren, jedoch ohne Bindung an den AD (LDAP-Connector).

Wir werden Windows 10 gemäß dem folgenden Schema auf einem Computernetzwerk bereitstellen: Wir werden ein bereitstellbares Windows 10-Image mit allen Programmen vorbereiten, über das Netzwerk über opsi booten, es mit clonezilla automatisch in einer Datei speichern und dann alle Computer so einstellen, dass es automatisch über opsi installiert wird, über das Netzwerk und automatisch Wir werden diese Datei über tftp auf allen Computern im Broadcast-Netzwerksegment verschütten.

Setzen Sie dazu im DHCP-Serverbereich den Parameter 66 in der IP unseres zukünftigen opsi 192.168.1.229-Servers

Bild

und den Parameter 67 auf linux / pxelinux.0. Fügen Sie

in DNS opsiserver.domain.local unter seiner statischen Adresse 192.168.1.229 hinzu
Dann erstellen wir eine virtuelle Maschine für unseren Opsi-Server auf Eisen, die Ihren Belastungen standhält und in Bezug auf die Geschwindigkeit zu Ihnen passt. SSD und mehrere Netzwerkkarten sind willkommen.

Opsi unterstützt nicht alle Systeme. Die Kompatibilitätsliste finden Sie hier .

Wir installieren sofort im englischen Gebietsschema. Ich rate Ihnen dringend, das kyrillische Alphabet nirgendwo auf diesem Server zu verwenden.

Meine Lieblings-Debian-10-Distribution installiere ich in einer minimalen Konfiguration mit dem Namen opsiserver.

Nach der Installation und dem Neustart konfigurieren wir für alle Fälle die Gebietsschemas:

dpkg-reconfigure locales

Ich wähle alles aus, wo es de_en_ gibt und ru_ system en_US.UTF8 verlässt.

Die weitere Installation ist eine Nacherzählung dieses an die Aufgabe angepassten Tutorials .

Ändern Sie den Servernamen, wenn er sich von dem unterscheidet, was wir benötigen:

hostname opsiserver.domain.local

Nachprüfung:

hostname -f

Bringen wir / etc / hosts in die folgende Form:

127.0.0.1 localhost
127.1.1.1 localhost.localdomain
192.168.1.229 opsiserver.domain.local opsiserver

Und wir werden seine Existenz für immer vergessen, da opsi den Inhalt dieser Datei fordert und wenn sie geändert wird, beginnt sie manchmal zu rebellieren und mit Fehlern zu bestreuen.

Installieren Sie die erforderlichen Pakete:

apt install wget host pigz mc -y

apt install samba samba-common smbclient cifs-utils -y 

Wir installieren den MySQL-Server standardmäßig, Maria-DB steht für mich auf, es wird auch funktionieren.

apt install default-mysql-server -y

sudo mysql_secure_installation

Wir bejahen die Fragen, ändern das Root-Passwort und merken es uns.

Fügen Sie dem System OPSI-Repositorys hinzu:

echo "deb http://download.opensuse.org/repositories/home:/uibmz:/opsi:/4.1:/stable/Debian_10/ /" > /etc/apt/sources.list.d/opsi.list

wget -nv https://download.opensuse.org/repositories/home:uibmz:opsi:4.1:stable/Debian_10/Release.key -O Release.key
apt-key add - < Release.key

Aktualisiert:

apt update

Wir entfernen tftpd, wenn dies der Fall ist, da OPSI damit in Konflikt steht:

apt remove tftpd

Wir entfernen die TFTP-Unterstützung von inetd, da OPSI in Konflikt steht, wenn dies der Fall ist:

update-inetd --remove tftp
apt install opsi-tftpd-hpa

Und installieren Sie den opsi Server direkt:

apt install opsi-server

Dabei werden sie nach den Daten gefragt, die zum Erstellen eines selbstsignierten Zertifikats erforderlich sind, das wiederum für die verschlüsselte Verbindung von Clients mit dem Server benötigt wird.
Installieren Sie die Windows-Unterstützung:

apt install opsi-windows-support

Konfigurieren Sie das MySQL-Backend:

opsi-setup --configure-mysql

Bild

Wir setzen die Serveradresse (localhost), den Benutzer, von dem aus wir handeln (root), das root-Passwort in MySQL (an das wir uns früher erinnert haben), den Namen der Datenbank für opsi (opsi), den Namen des Benutzers, der in dieser Datenbank arbeiten wird (opsi), das Passwort für diesen Benutzer (wir erfinden) Neu).

Als nächstes müssen Sie für Debian 10 / usr / sbin zu PATH hinzufügen:

PATH=$PATH:/usr/sbin

und die gleiche Zeile sollte zu .bashrc in Ihrem Home-Verzeichnis hinzugefügt werden. Wenn dies nicht getan wird, erhalten Sie im nächsten Schritt den Fehler "chpasswd not found".

Wir initialisieren das System und legen die erforderlichen Rechte für die Dateien und Verzeichnisse des Systems fest:

opsi-setup --init-current-config
opsi-set-rights

Neustart des Dienstes:

systemctl restart opsiconfd.service
systemctl restart opsipxeconfd.service

Samba konfigurieren:

opsi-setup --auto-configure-samba

OPSI-Clients stellen über https an Port 4447 eine Verbindung zum Hauptserver her. Wenn Sie eine Installation aufrufen müssen, mounten die Clients den Samba-Ball vom Opsi-Server und installieren Software von diesem. Um dies zu ermöglichen, erlauben wir OPSI, Samba neu zu konfigurieren.

Samba Neustart:

systemctl restart smbd.service
systemctl restart nmbd.service

Legen Sie das Administratorkennwort für den Benutzer des pcpatch-Systems fest:

opsi-admin -d task setPcpatchPassword

Erstellen Sie nun einen Benutzer zur Verwaltung des Systems:

useradd -m -s /bin/bash adminuser

Erstellen Sie ein Passwort für ihn:

passwd adminuser

Nun das Passwort für Samba erstelle ich das gleiche wie im System:

smbpasswd -a adminuser

Zur Gruppe hinzufügen:

usermod -aG pcpatch adminuser

Wenn wir etwas mit OPSI unter der Wurzel tun wollen, müssen wir die Wurzel zur Gruppe hinzufügen:

usermod -aG pcpatch root

Noch ein paar Krücken:

opsi-setup --patch-sudoers-file

Jetzt können Sie Pakete auf das System herunterladen und während des Ladens Kaffee trinken.

opsi-package-updater -v install

Anschließend können die Pakete mit dem folgenden Befehl aktualisiert werden:

opsi-package-updater -v update

Gehen Sie nun zu
https://download.uib.de/opsi4.1/misc/helper/ , laden Sie die von opsi konfigurierte Verwaltungsoberfläche herunter und installieren Sie sie,

opsi-configed-setup.exe

um den Server einzugeben, geben Sie die Serveradresse, unseren Administratorbenutzer und sein Kennwort ein,

https://opsiserver.domain.local:4447/

und wir befinden uns im System.

Zu diesem Zeitpunkt ist der Server installiert!

Bild

1 - Alle mit diesem Server verbundenen Clients können in Gruppen, einschließlich verschachtelter Clients, zerlegt werden. Die Zuweisung wird auf die gesamte Gruppe gleichzeitig angewendet.
2 - eine Registerkarte mit Clients, dies ist eine Liste der Computer, die von opsi gesteuert werden.
3 - Clients sind eine Liste. Hier können Sie sie in beliebiger Reihenfolge auswählen, um den Zweck
4 - „Produktkonfiguration“ - ein Opfer der Übersetzung - anzuwenden . Tatsächlich gibt es Pakete, die unter Windows in der Terminologie opsi - localboot products installiert werden können
5 - Netboot-Produkte - Dies ist alles, was über das Netzwerk heruntergeladen wird.
6 - opsi-mac-Adresse - Die Mohnblume des Computers wird beim Netzwerkstart ermittelt.
7 - opsiHostKey ist das „Kennwort“ des Clients im opsi-System, wenn Sie es von löschen Computer opsi Client, und dann neu installieren, wird es nicht funktionieren, da das Passwort alt bleibt und nicht geeignet ist. Dies ist sowohl ein Fehler als auch eine Funktion. Und wie würdest du es machen?

Jetzt bereiten wir das Windows 10-Bild vor, das wir verschütten werden. Clonezilla, das wir verwenden werden, ist nicht so gut wie die Akronis, aber es weiß immer noch, wie man das Bild von einer kleineren Festplatte auf dieselbe oder eine größere Festplatte verschüttet.

Wir haben alle Programme, die wir benötigen, sowie die Remoteserver-Verwaltungstools für Windows 10 in das System integriert. Ich habe Windows 10 1903, ich habe es für 1803 installiert und alles, was gestartet werden muss. Sie können es hier herunterladen:https://www.microsoft.com/en-us/download/details.aspx?id=45520
Wir benötigen es für das Dienstprogramm netdom, mit dem Sie den Computer automatisch in die Domäne eingeben können.

Dazu laden wir Dateien von hier https://github.com/valmont2k/renamejoin in das Verzeichnis c: \ renamejoin herunter. Wir erstellen einen Domänenadministrator auf dem Domänencontroller mit der Möglichkeit, Computer nur mit dem Joinadmin-Login mit dem Kennwort password1234QWE in die Domäne einzugeben. Wenn ein Angreifer dieses Kennwort abfängt, kann er nur Computer in unsere Domäne bringen.

Führen Sie die Zeile von createtesk.txt in der Administratorkonsole des vollständig vorbereiteten Windows aus, wodurch eine Aufgabe zum Starten beim Booten erstellt wird.

Das gesamte Schema funktioniert wie folgt:
Wenn wir das Bild in alle Computer aufgeteilt, beim ersten Start wird Windows eine Aufgabe starten C:\renamejoin\step1.cmd, die auf den Computer umbenennt win-%random%, den Computer neu starten, Löschen C:\renamejoin\step1.cmdund Umbenennen C:\renamejoin\step2.cmdzu C:\renamejoin\step1.cmd. Beim nächsten Start wird Windows gestartet C:\renamejoin\step1.cmd, wodurch dieser Computer in die Domäne eingegeben , neu gestartet und gelöscht wird C:\renamejoin\step1.cmd. Wir können die potenziell gefährliche Aufgabe später von den Domänencomputern entfernen. Natürlich über OPSI!

Bild

Es ist Zeit, das vorbereitete Windows in ein Image zu konvertieren.

Fügen Sie unseren Computer über das Computersymbol mit einem Pluszeichen zur von opsi opsi konfigurierten Verwaltungsoberfläche hinzu und legen Sie die Mohnadresse fest. Speichern. Wir gehen zu Netboot-Produkten über, gegenüber von Clonezilla setzen wir "Setup". In der Konfiguration für den Client machen wir alles wie im Screenshot verfügbar: den Namen der Datei und den Befehl, mit dem wir die gesamte Festplatte in das Image füllen. Im BIOS des Computers mit Windows legen wir den Download aus dem Netzwerk fest. Starten Sie den Comp neu. Wenn Sie alles richtig gemacht haben, werden Sie sehen, wie Windows ohne die Hilfe von Händen in das Bild fließt.

Bild

In der Zwischenzeit werden Computer zusammengebaut, aber sie müssen zusammen mit ihren Mohnadressen als Clients in opsi hinzugefügt werden. Das Hinzufügen mit Stiften ist überhaupt keine Bojarenangelegenheit, oder?

Die Lösung ist:

apt install tcpdump

Auf opsiserver ausführen:

tcpdump -n udp -vvvvv -e port 69 > /var/log/tftp

Wenn Sie die BIOS-Einstellungen für alle Computer so einstellen, dass sie über das Netzwerk booten (und gleichzeitig von PCI-E-Geräten über das Netzwerk aufwachen, werden Sie später verstehen, warum), laden Sie sie. Wenn das blaue Fenster des opsi-Startmenüs während des Startvorgangs angezeigt wird, machen

Bild

Sie alles richtig.

Beim Booten greifen Computer auf unseren Server zu, tcpdump schreibt ihre Mohnadressen in eine Datei /var/log/tftpund verwendet ein Repo-Skript https://github.com/valmont2k/opsi-hosts-importer, um auf opsiserver ausgeführt zu werden, nachdem alle Computer in opsi markiert sind und ihre Mohnadressen dort belassen. Dieses Skript verwendet die opsi-API von hier https://download.uib.de/opsi4.1/experimental/documentation/html/opsi-api-documentation/opsi_API.html und ein bisschen Magie. Nach dem Start haben Sie Clients auf opsiserver der Form win% random32% .domain.local

Der nächste Schritt besteht darin, das Windows-Image (was bereits geschehen sein sollte) auf alle Computer zu übertragen.

Bild

Wählen Sie dazu alle Computer aus, auf denen Sie Windows installieren müssen, und stellen Sie gegenüber Clonezilla die Werte wie im Screenshot ein. Sie schalten die Computer aus, dann mehrere nacheinander ein und beobachten, wie Windows automatisch auf sie rollt. Sie selbst werden umbenannt und in die Domäne eingegeben.

Wenn Sie dies auch automatisieren möchten, setzen Sie etherwake und schreiben Sie ein Skript, das mit einer bestimmten Verzögerung die Mac-Adressen aus der Datei / tmp / newmacs übernimmt und deren Hosts aktiviert, sodass sie abwechselnd Windows rollen. Siehe Update 1 .

Ich machte eine Geste von Ronaldo aus einer Werbung für Shampoo und packte bereits für Kaffee, als Ilon Mask erneut auf meinem Handy anrief und hinzufügte:

- Ja, ich habe vergessen zu sagen, es ist notwendig, dass die %program%neueste Version morgen auf allen Computern verfügbar ist. Können Sie damit umgehen?
- Natürlich wird alles morgen sein!
Ich kann das Idol der Technokraten nicht verärgern, also müssen Sie Ihr Gehirn wieder in Ihre Hände legen.

Es wäre schön, wenn sich die Computer beim Start einen opsi-Client namens opsi-client-agent einrichten würden. Dies kann über Domänengruppenrichtlinien erfolgen.

Damit dies während der Installation ohne Eingabe eines Kennworts geschieht, müssen Sie das Kennwort Ihres Benutzers in der Datei
/var/lib/opsi/depot/opsi-client-agent/files/opsi/cfg/config.iniauf opsiserver
als Wert für service_hidden_password hinzufügenadminuserbase64

[installation]
service_user=adminuser
service_password=none
service_hidden_password=base64HERE

Fügen Sie als Nächstes die Gruppenrichtlinie in die setupOPSI-Domäne ein und übernehmen Sie das entsprechende Skript. https://github.com/valmont2k/opsi-install-opsi-client-agent-over-active-directory-domain-policy
Denken Sie daran, Ihre Werte in das Skript einzufügen.

Bild

Wenn Sie alles richtig gemacht haben, werden die Clients beim ersten Neustart in der Domäne installiert opsi-client-agent, neu gestartet und unter ihren Namen win-%random%in der OPSI-Verwaltungsoberfläche angezeigt. Alte Kunden mit denselben Mohnadressen können gelöscht werden.

Jetzt können Sie mit der Installation fortfahren %program%.

Wir gehen hier https://forum.opsi.org/viewtopic.php?f=22&t=7573 und finden einen Link zu dem Paket *.opsimit dem Namen packagebuilder, so etwas wie "opsi PackageBuilder Windows (opsi Paket)".

Laden Sie das Paket in das Verzeichnis /var/lib/opsi/workbenchauf opsiserver herunter

cd /var/lib/opsi/workbench

wget https://opsipackagebuilder.s3.amazonaws.com/opsiPackageBuilder/python/opsipackagebuilder_8.4.4-1.opsi 

und installieren Sie es:

opsi-package-manager -d ALL -i opsipackagebuilder_8.4.4-1.opsi

Klicken Sie nun in der Opsi-Verwaltungsoberfläche auf die Schaltfläche "Aktualisieren" und sehen Sie, dass wir neue Pakete opsipackagebuilderund haben opsi-setup-detector.

Wir haben sie über die Steueroberfläche auf einem Testcomputer unter Windows bereitgestellt.

Wenn das Programm opsipackagebuilderund opsi-setup-detectoretabliert, laufen opsi-setup-detectorund spielen off es auf das Installationsprogramm windirstat, von der offiziellen Website Pre-Programm heruntergeladen.

Vor der Installation müssen Sie die Programmeinstellungen konfigurieren. Wir montieren den Ball auf der Testmaschine \\ opsiserver.domain.local \ opsi_workbench als Laufwerk z: Wir schreiben unseren Namen und unsere Mail in die angegebenen Felder:

Bild

OPSI kann ein Paket mit 32 und 64 Installationsprogrammen gleichzeitig erstellen und diese basierend auf der Systemkapazität festlegen. Wir haben überall 64 Bit, also klicken Sie auf "Einzelne Datei analysieren ...":

Bild

Wir sehen, dass der Detektor das Installationsverzeichnis nicht verstanden hat. Wir können es selbst herausfinden, indem wir versuchen, das Programm über das Installationsprogramm zu installieren. Er erkannte jedoch den Typ des Installationsprogramms, die Version des Programms, die Größe der Anwendung in zusammengesetzter und bereitgestellter Form, den Offline-Installationsschlüssel, den Offline-Entfernungsschlüssel und den Namen Deinstallationsprogramm.

Bild

Wir geben das Installationsverzeichnis selbst ein und klicken auf Weiter. Schritt:
Bild

Hier können Sie den Produktnamen, seine ID und Beschreibung hinzufügen und die Version des Pakets festlegen, dh den Versuch unternehmen, das Paket zusammenzustellen (in unserem Fall den ersten Versuch):

Bild

Sie können Abhängigkeiten hinzufügen, dies bedeutet, dass für die Installation des aktuellen Pakets die Pakete selbst zur Installation bereitgestellt werden, die in den Anforderungen für unser

Bild

Paket angegeben sind: OPSI-Paket erstellen:

Bild

Wir haben das Paket erstellt, jetzt müssen wir zu opsiserver in gehen/var/lib/opsi/workbench/windirstat.

Paket sammeln:

opsi-makepackage

Es installieren:

opsi-package-manager -d ALL -i windirstat-1.1.2-1.opsi

Wenn alles gut gegangen ist, klicken Sie in der von opsi konfigurierten Verwaltungsoberfläche auf die Schaltfläche "Aktualisieren" und sehen Sie, dass wir ein neues Paket haben windirstat, das auf ausgewählten Computern in unserem Netzwerk installiert werden kann.

Bingo! Das erste Paket ist zusammengebaut!

Um unsere Aufgabe zu verkomplizieren, erstellen wir mithilfe von Powershell eine Regel in der Windows-Firewall, die dem Client Zugriff auf die Ports 4441 und 4447 gewährt, und lassen diese Anwendung für den Benutzer durch die Registrierungsoptimierung automatisch laden, als wäre es beispielsweise ein Messenger.

Opsi Package Builder

Bild

öffnen : Wählen Sie diese Option, um das Paket zu öffnen und unser Paket mit windirstat zu öffnen:

Bild

OPSI verhält sich standardmäßig wie folgt: Wenn Sie ein Programm aus uninstall.opsiscript entfernen, wird delsub.opsiscript aufgerufen, wodurch das Programm entfernt wird. Bei der Installation eines Programms aus setup.opsiscript wird delsub.opsiscript aufgerufen, wodurch das Programm entfernt und dann durch setup.opsiscript installiert wird. Daher nehmen wir Änderungen vor, um etwas in setup.opsiscript zu erstellen, und Änderungen, um etwas in delsub.opsiscript zu löschen.

Die ganze Magie dieser Skripte spiegelt sich in der Dokumentation wider. Https://download.uib.de/opsi4.1/documentation/html/en/opsi-winst-manual/opsi-winst-manual.html

setup.opsiscript kann über das Stiftsymbol geöffnet werden delsub.opsiscript über Script Tree.

Bild

Hier ist das komplette Dateimenü.

Bild

Jeder Versuch, ein Paket zu erstellen, sollte um eins erhöht werden.

Bild

Wir fügen das Programm über opsi zum automatischen Laden hinzu. Fügen Sie dazu die Zeilen in setup.opsiscript ein:

Registry_changes  /AllNTUserdats /64bit
[Registry_changes]
OpenKey [Software\Microsoft\Windows\CurrentVersion\Run]
Set "WinDirStat" = "C:\Program Files (x86)\WinDirStat\windirstat.exe"

Fügen Sie in delsub.opsiscript die folgenden Zeilen ein:

Registry_changes  /AllNTUserdats /64bit
[Registry_changes]
OpenKey [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
;Set "WinDirStat" = "C:\Program Files (x86)\WinDirStat\windirstat.exe"
DeleteVar "WinDirStat"

Wir fügen der Firewall die Regel hinzu, indem wir das Powershell-Skript ausführen. Fügen Sie dazu die Zeilen in setup.opsiscript ein:

DosInAnIcon_PowerShell_ExecutionPolicy
ExecWith_PowerShell_NichtPDCAktionen powershell.exe winst /sysnative
[DosInAnIcon_PowerShell_ExecutionPolicy]
echo "powershell set-executionpolicy RemoteSigned ..."
powershell.exe set-executionpolicy RemoteSigned
exit %ERRORLEVEL%

[ExecWith_PowerShell_NichtPDCAktionen]
; hier Dein PS-Code

New-NetFirewallRule -DisplayName 'OPSI-Inbound' -Profile @('Domain', 'Private', 'Public') -Direction Inbound -Action Allow -Protocol TCP -LocalPort @('4441', '4447')

Fügen Sie in delsub.opsiscript die folgenden Zeilen ein:

DosInAnIcon_PowerShell_ExecutionPolicy
ExecWith_PowerShell_NichtPDCAktionen powershell.exe winst /sysnative
[DosInAnIcon_PowerShell_ExecutionPolicy]
echo "powershell set-executionpolicy RemoteSigned ..."
powershell.exe set-executionpolicy RemoteSigned
exit %ERRORLEVEL%

[ExecWith_PowerShell_NichtPDCAktionen]
; hier Dein PS-Code
Remove-NetFirewallRule -DisplayName 'OPSI-Inbound'

Der vollständige Code kann hier eingesehen werden:

https://github.com/valmont2k/WinDirStatOpsiPackageTest

Ich habe mich bereits entspannt und beobachtet, wie opsi die %program%neueste Version auf das gesamte Netzwerk überträgt, als Ilon meine Gedanken in der Höhe erneut unterbrach.
- Nächste Woche werden weitere 500 Personen kommen, Büros wurden bereits angemietet, Computer werden importiert, es gibt einen Netzwerker, Sie müssen ein Windows-Netzwerk in sechs Filialen in der Stadt bereitstellen. Können Sie damit umgehen?
- Nun, das ist natürlich keine Raketenwissenschaft - ich scherzte müde als Antwort.

Wir klonen unseren Opsiserver-Server mit dem Hypervisor und stellen ihn in der Zweigstelle bereit.
Wir gehen davon aus, dass die Zentrale über ein VPN mit einer Geschwindigkeit von mindestens 10 Mbit / s mit Zweigstellen verbunden ist.

Jetzt erstellen wir einen Depotserver, dh einen Server zum Speichern von Paketen in der Verzweigung. Clients in der Zweigstelle klopfen auf https an den Hauptserver. Wenn Sie Software installieren müssen, mounten sie den Depotserver in Ihrer Zweigstelle und werden von dort aus installiert. Dies geschieht insbesondere, um den Internetkanal zwischen dem Büro und der Zweigstelle zu speichern.

Wir konfigurieren auf dem Zweigstellenserver opsiserver-2 eine statische Adresse aus dem lokalen Netzwerk, die die Datei /etc/network/interfacesentsprechend dem neuen Netzwerk ändert .

Hostnamen und Hosts ändern:

sed -i 's/opsiserver/opsiserver-2/' /etc/hostname
sed -i 's/opsiserver/opsiserver-2/g' /etc/hosts

In / etc / hosts aktualisieren wir die Daten, indem wir eine neue IP-Adresse eingeben

reboot

Benennen Sie den opsi-Server mit opsi um:

opsi-admin --no-depot -d method host_renameOpsiDepotserver opsiserver.domain.local opsiserver-2.domain.local

Vom Server opsiserver-2.domain.local verbinden wir ihn als Depot mit opsiserver.domain.local:

opsi-setup --register-depot

Geben Sie den Namen des Hauptservers an, mit dem wir das neue Depot, den Administrator und das Kennwort verbinden: Hier

Bild

müssen Sie nichts ändern : Sie

Bild

können überprüfen, ob in opsi-configed alles korrekt ausgeführt wurde:

Bild

Als Nächstes müssen Sie das System so konfigurieren, dass Clients den Depotserver für sich selbst auswählen. Wir wählen alle Kunden aus und setzen ihnen ein dynamisches Depot. Standardmäßig überprüft der Client seine IP-Adresse und wählt das Depot aus seinem Netzwerk aus.

Bild

Jetzt konfigurieren wir, dass alle zukünftigen Clients das Depot sofort dynamisch auswählen:

Bild

Das ist alles, die Einrichtung des neuen Depotservers ist abgeschlossen. Sie können den opsi-client-agent für Computer im lokalen Netzwerk mit demselben Skript installieren, das wir zuvor im Hauptbüro installiert haben, nicht Vergessen, die IP-Adresse im Skript zu ändern.

In jedem Zweig legen wir einen Domänencontroller fest (Sie können schreibgeschützt), führen unsere eigene Netzwerkadressierung durch und teilen den Standardstandort innerhalb der Windows-Domäne in Unterstandorte auf, von denen jeder unser Subnetz, unsere Gruppenrichtlinie, mit seinem Installationsskript opsi-client-agent erstellt.

Dann wiederholen wir im neuen Zweig.

Ich trank meinen Kaffee aus und ging nach Hause. Die LED auf der Netzwerkkarte signalisierte, dass neue und neue Systeme im Lärm von Kühlern eingeführt wurden ...

Update 1:
Wie sich herausstellte, ist kein Skript erforderlich. Mit opsi-configed kann die Maus über den Sheduler auf das Erwachen von Clients klicken.

All Articles