Weisheiten - der Netz-Weise Blog

Hier finden Sie Tipps und Tricks für vor, während und nach der Schulung.

Boot von VHD auf einem leeren Datenträger einrichten

Sie haben einen leere Festplatte und möchten direkt von VHD booten? Abgesehen von kleinen Stolperfallen eigentlich ganz einfach...

Wenn Sie eine neue Festplatte in Ihrem Rechner haben, auf der noch kein Betriebssytem vorhanden ist, können Sie den Rechner trotzdem ohne eine Installation in Betrieb nehmen - vorausgesetzt, Sie haben eine VHD-Datei zur Verfügung. VHD-Dateien sind Dateien, die intern eine Festplatte simulieren. Windows kann direkt von VHD booten - Windows 8.1 sogar von VHDX, einer deutlich performanteren Version von VHD. Sie könnten Beispielsweise die Beta-Versionen von Windows 10 oder Windows Server NG (Next Generation) als vhd bei Microsoft herunter laden. Oder Sie erzeugen sich mit Convert-Windowsimage eine eigene vhd in 5 Minuten.  Um eine Festplatte für den Boot von VHD vorzubereiten, legen Sie zuerst eine Startpartition mit 300 MB Größe an. Als Partitionsformat wählen Sie FAT32. Setzen Sie die Partition anschließend aktiv. Von Windows PE per Kommandozeile aus können Sie das mit Diskpart erledigen:

 diskpart
 create partition primary size=300
 format quick fs=ntfs
 assign letter=s
 active

Anschliessend richten Sie den Rest der Festplatte als eine große Partition ein:

 create partition primary 
 format quick fs=ntfs
 assign letter=c 
 exit

Nun können Sie die vhd-Datei auf den neuen Datenträger kopieren. Im letzten Schritt müssen Sie die Festplatte mit einem Boot-Bereich (BCD-Store) austatten. Hierfür müssen Sie die vhd-Datei mounten: 

 diskpart
 select vdisk file=C:\windows.vhdx
 attach vdisk

Nun müssen der VHD-Datei einen Laufwerksbuchstaben zuweisen, damit Sie Zugriff auf die Partition bekommen - im Beispiel der Laufwerksbuchstabe v:

Weiterlesen
0 Kommentare

Servergespeicherte Benutzerprofile nur auf primäre Computer synchronisieren

"Windows 8 und Server 2012 bringen das Feature ""Primäre Computer"" mit, die Möglichkeit, ein Benutzerprofil nur auf bestimmten Computern zu nutzen. Bis Windows 8 bedeutete das Anlegen eines servergespeicherten Windows Benutzerprofils, dass ein Benutzerprofil immer auf jeden Computer heruntergeladen wurde, auf dem ein Benutzer sich angemeldet hat. Das kann nicht nur sicherheitstechnisch unglücklich sein - kritische Daten werden überall im Netz verteilt - sondern verlängert auch die Anmeldezeiten auf Sytemen, auf denen man sich nur selten anmeldet. Mit dem Feature primärer Computer kann man dem Benutzer nun einen oder mehrere Computer vorgegen, die das servergespeicherte Benutzerprofil ziehen. Alle anderen Computer nutzen ein lokale Profil. Voraussetzung dafür ist Windows 8 und das AD-Schema von Windows Server 2012, da die Funktion über ein neues Benutzerattribut implementiert wird - msDS-Primary Computer. Richten Sie primäre Computer einfach ein, indem Sie in den DN (Distinguished Name) des Computers kopieren und in das Attribut msDS-Primary Computer des Benutzerobjekts einfügen. Das können Sie über AD Benutzer und Computer machen (indem Sie die erweiterte Ansicht unter "Ansicht" aktivieren und dann im Benutzer den Attributs-Editor verwenden), oder über Powershell:

$computer=Get-ADComputer Computername
Set-ADUser Benutzername –Add @{‘msDS-PrimaryComputer’=”$computer”}

Im nächsten Schritt aktivieren Sie Ordnerumleitungen und / oder servergespeicherte Profile in einer Gruppenrichtlinie, indem Sie im Benutzer oder Computer und Administrative Templates\System\Folder Redirection gehen und ""Redirect Folders on Pirmary Computers only"" wählen. Für Profile heißt die Option ""Download roaming profiles on primary computers only"". "

Markiert in:
0 Kommentare

Windows Profile Betriebssystemunabhängig mit UE-V

"Benutzerprofile verwalten - augenblicklich und Betriebssystemversionst-unabhängig - ist das möglich? Ja, mit UE-V!

UE-V (eine kurzform von Microsoft User Experience Virtualization) ist eine Funktion, um Windows Benutzerprofile zu verwalten. Vor kurzem haben wir darüber geschrieben, wie man servergespeicherte Benutzerprofile verwalten kann, wenn man 2 verschiedene Windows-Versionen unterstützen muß. Normalerweise muß man dafür 2 verschiedene Benutzerprofile hinterlegen und die entsprechenden Benutzerordner wie Desktop, Eigene Dateien usw. aus dem Benutzerprofil ""herausziehen"" und auf einer Netzwerkfreigabe speichern. Mit Windows UE-V wird das Benutzerprofil (die Benutzereinstellungen, nicht die Dateien, die ziehen wir weiterhin aus dem Profil heraus) über einen eigenen Dienst verwaltet. Der UE-V Dienst überwacht die Registry und den App-Folder im Benutzerprofil und synchronisiert Änderungen an Anwendungseinstellungen auf ein Netzwerklaufwerk (Share). Diese Änderungen werden nach dem Beenden der Anwendung direkt gespeichert, so dass ein Abmelden zum Synchronisieren der Benutzereinstellungen nicht mehr notwendig ist. Auch Modern Apps (Windows 8 Apps) werden mit UE-V 2.0 unterstützt. Out of the Box bringt UE-V die Unterstützung diverser Anwendungen mit. Für Anwendungen, die nicht von UE-V unterstützt werden, können eigene XML-Konfigurationsdateien mit Hilfe eines mitgelieferten Tools erstellt werden. Das tolle an UE-V ist, dass nicht alle Einstellungen zwischen den Clients eines Rechners synchronisiert werden. Dadurch kann man die Benutzerprofile auch zwischen unterschiedliche Betriebssytemen ohne Verrenkungen verwalten. So, wo ist jetzt der Nachteil des UE-V? Es ist nur als Bestandteil des Desktop Optimization Kits zu bekommen (M-DOP). Warum nur, Microsoft, warum? Verdient ihr mit dem MDOP tatsächlich so viel Geld, dass es sich lohnt, diese Programme nicht zum Bestandteil des Betriebssystems zu machen?"

Markiert in:
0 Kommentare

Windows Homeverzeichnisse werden als "my Document" angezeigt

Ihre auf den Server umgeleiteten Benutzerprofile heissen alle "My Documents" oder "eigene Datien"? Die Desktop.ini ist Schuld! Ein Problem beim Kunden: die meisten der auf den Server umgeleiteten Verzeichnisse werden im Explorer als ""My Documents"" oder ""Eigene Dateien"" angezeigt. Sehr merkwürdig, denn eigentlich kann ein ordnername ja nicht mehrfach im gleichen Verzeichnis auftauchen. Das Problem ist die desktop.ini, die den Explorer anweist, Ordner mit einem bestimmten Symbol zu versehen oder eben umzubennen. Die Desktop.ini liegt im Benutzerordner, und löschen führt dazu, dass wieder der Originalname angezeigt wird. Leider ist das Löschen nicht von Dauer. Um das wiederanlegen der desktop.ini zu verhindern, gibt es verschiedene Möglichkeiten. Zum einen kann man den Schreibzugriff auf die Datei verhindern. Am besten hat mir allerdings der Tipp gefallen, durch einen Eingriff in die Registry (per gpo verteilt) das erstellen der Desktop.ini vollständig zu verhindern - mit der Nebenwirkung, dass der Explorer nun natürlich gar keine desktop.ini Dateien mehr erstellt.

Schlüssel: HKLM:SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer
Name: "UseDesktopIniCache"
Typ:dword
Value: 00000000

0 Kommentare

Benutzerprofilkompatibilität in WIndows 7, 8 und 10

Auch das Benutzerprofil von Windows 10 ist wieder nicht mit den Vorgängerversionen kompatibel. Aber Microsoft hat vorgesorgt. Mit Windows 7 hat Microsoft zum ersten mal eine neue Verion des Benutzerprofils eingeführt, um zu verhindern, dass Benutzer mit servergespeicherten Profilen nicht beim Wechsel zwischen Betriebssystemversionen (z.B. auf RDP-Servern) ihr Profil zerschiessen. Dafür legt Windows 7 einen eigenen Profilordner mit der Endung .V2 an. Windows 8 und Windows 8.1 verwenden standardmässig das gleiche Verzeichnis wie Windows 7, nämlich .V2. Man kann allerdings aktivieren, dass auch Windows 8 (.V3) und Windows 8.1 (.V4) sich in eigenen Unterordern schreiben. Installieren Sie hierfür je nach Betriebssytem eines der beiden Hotfixes:

Für Windows 8 das in KB2887239 beschriebene.
Für Windows 8.1 das in KB2887595 beschriebene Hotfix Rollup. 

Danach setzen Sie den folgenden Schlüssel in der Registry:

Schlüssel: HKEY_LOCAL_MACHINE\System\CurrentControlset\Services\ProfSvc\Parameters
Name: UseProfilePathExtensionVersion
Wert: 1

Alternativ können Sie dieses Feature auch über Gruppenrichtlinien Einstellungen (Group Policy Preferences) setzen. 

Weiterlesen
0 Kommentare

Ein Rollup-Update für den Microsoft CRM-Client lässt sich nicht installieren

Sie versuchen, ein Update für den CRM-Outlook-Client zu installieren, aber die Installation schlägt mit einer Fehlermeldung wie dieser

“The type initializer for 'Microsoft.Crm.LocatorService' threw an exception.
Cannot load Counter Name data because an invalid index '' was read from the registry.”

fehl? Dann könnte die Ursache fehlerhafte Performance-Counter sein. Klingt merkwürdig? Dachte ich mir auch, aber die Reparatur der Performance-Counter hat trotzdem geholfen. ;-) Geben Sie an der Kommandozeile mit administrativen Rechten einfach

lodctr /r

ein. Überprüfen Sie, ob der CRM-Provider aktiv ist, indem Sie

lodctr /q | find "CRM Client" 

eingeben. Sind die Performance-Counter enabled, können Sie die Installation starten. Ansonsten Registrieren Sie den Client mit

lodctr /e:CRM Client

Danach sollte die Installation des CU (hoffentlich) problemlos funktionieren.

Markiert in:
0 Kommentare

Windows Datei- und Druckserver migrieren

Windows Server bringt eine Reihe von Migrationstools mit, die die Migration von Benutzern, Druckern und Dateien recht einfach machen Sie müssen lokale Benutzer, Gruppen, Drucker oder Dateien zwischen zwei Windows-Server migrieren? Kein Problem mit den Windows Server Migrationstools.

Szenario 1: Benutzer und Gruppen migrieren

Um Benutzer und Gruppen zu migrieren, verwenden Sie die Windows Migration Tools. Auf Windows Server 2008 R2 und 2012 (R2) installieren Sie diese über den Server-Manager oder über Powershell auf dem Quell- und auf dem Zielserver:

Install-WindowsFeature -Name Migration

Danach laden Sie in Powershell das Migrations Snap-In:

Add-PSSnapin Microsoft.Windows.ServerManager.Migration

Exportieren Sie nun zuerst auf dem Quellserver die Benutzer und Gruppen mit Hilfe des Cmdlets Export-SmigServerSettings. Über den Parameter User können Sie angeben, welche Benutzer exportiert werden sollen. Es stehen Ihnen die Optionen "All","Enabled" und "Disabled" zur Verfügung. Wenn Sie auch die lokalen Gruppen exportieren wollen, verwenden Sie den Parameter Group. Achten Sie aber darauf, dass Sie die Gruppen in einem Befehl mit den Usern exportieren, da Sie sonst ein weiteres Export-Verzeichnis benötigen. Das Export-Verzeichnis sollte sinnigerweise von beiden Servern aus erreichbar sein. Da der Export mit Kennwort erfolgt, müssen Sie die Daten mit einem Kennwort verschlüsseln.

Weiterlesen
0 Kommentare

Powershell-Cmdlets mit gleichem Namen beim Aufruf unterscheiden

Powershell-Module machen das Nachrüsten von Cmdlets einfach, aber was tun, wenn zwei Cmdlets mit unterschiedlicher Funktion den gleichen Namen haben? Beim Erstellen von Cmdlets hat Microsoft eine Reihe von Vorgaben definiert, um das Cmdlet zu bennen. So sollen alle Cmdlets mit einem Verb aus einer vordefinierte Liste (Get-Verb listet die erlaubten Verben auf) erstellt werden. Außerdem soll das Cmdlet aus dem Namen erkennen lassen, was es tut. Das kann aber zu einem Problem führen: Wenn man Cmdlets unterschiedlicher Quellen verwendet, können prinzipiell Cmdlets mit gleichem Namen aber unterschiedlicher Funktion auftreten. Im .Net Framework löst man dieses Problem über Namensräume, aber die gibt es bei Powershell nicht. Die zwei elegantesten Lösungen sind, entweder beim Aufrufen des Cmdlets den Modulnamen vor dem Cmdlet zu setzen:

Hyper-V\get-vm

oder beim Import des Moduls ein Prefix für die Cmdlets zu definieren. Hierbei muß der Import aber vor dem ersten Anwenden eines Cmdlets aus dem Modul erfolgen, weil die Cmdlets sonst doppelt importiert werden:

Import-Module -Name Hyper-V -Prefix HV
0 Kommentare

SQL Server Database mail aus Office 365 nutzen

SQL-Server kann direkt aus dem SQL-Server heraus mails versenden und nutzt dafür ein System, dass sich SQL Server database mail (SQL Server Datenbankmail) nennt. Database mail kann allerdings nicht direkt versenden, sondern benötigt ein mail relay, also einen Mail-Server, der die Daten weiterleitet. Wenn Sie hierfür Office 365 einsetzen möchten, gehen Sie folgendermaßen vor:

Richten Sie zuerst in Office 365 einen neuen Benutzer ein. Der Benutzer benötigt eine Lizenz für Exchange - wählen Sie erste eine Komplettlizenz für den Benutzer aus und entfernen Sie dann die Lizenzen für die anderen Dienste.  Ganz wichtig - melden Sie sich jetzt einmal mit dem Benutzer an! Der Benutzer muss sein Kennwort ändern. Wenn Sie das nicht tun, wird database-mail am Server keine Anmeldung durchführen können - stattdessen erhalten Sie eine Fehlermeldung:

"The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.1 Client was not authenticated".  

Nach der Änderung des Kennworts wechseln Sie im Menü oben rechts auf "outlook" und stellen im Assistenten die Zeitzone und das Land ein. Im Outlook-Fenster können Sie jetzt auf das Zahnrad oben rechts gehen und Optionen auswählen. Hier finden Sie jetzt unter "Einstellungen über POP oder IMAP" den Mailserver, den Sie als Empfänger angeben müssen.  Nun öffnen Sie die Database-Mail-Einstellungen und konfigurieren den Server:

mailserver: smtp.office365.com (oder was immer bei Ihnen eingestellt war)
SSL-Verschlüsselung aktiv
Basis-Authentifizierung (mit den Benutzerdaten)

Markiert in:
Weiterlesen
0 Kommentare

virtuelle Hyper-V Maschinen mit dem NAT-Switch verwenden - byebye Router-VM!

Dank Docker gibt es in der aktuellen Preview von Windows 10 und in der Rosetta-Jubiläums-Ausgabe, die Ende Juli erscheint, endlich die Möglichkeit, virtuelle Maschinen in einem isolierten, privaten Netzwerk per NAT mit dem physikalischen Netzwerk zu verbinden, ohne eine Router-VM installieren zu müssen. Der NAT-Switch wurde notwendig, um per Docker bereitgestellte Anwendungen mit den Netzwerk zu verbinden. Und so richtet man einen NAT-Switch ein: 

Legen Sie zuerste mit Hyper-V einen neuen internen VM-Switch an. In früheren Versionen von Windows 10 gab es einen speziellen NAT-Switch, aber der ist zugunsten des internen Switches wieder gewichen:

$NatSwitch = New-VMSwitch -SwitchName Nat -SwitchType Internal

Als nächstes benötigen wir eine Gateway-Adresse für das interne Netzwerk, die wir an den Switch binden. Ein interner Switch legt automatisch auch eine interne virtuelle Netzwerkkarte an. An diese wird die Gateway-IP gebunden. Das folgende Script fragt zunächst den zum Switch gehörenden Netwerkadapter ab. Das passiert in zwei Schritten: Erst wird die virtuelle Repräsentation mit Get-VMNetworkadapter abgefragt, und dann wird die dazugehörige physikalische Netzwerkkarte abgefragt. Es handelt sich dabei um dasselbe Gerät, aber mit zwei unterschiedlichen Cmdlets abgefragt. Diesen umständlichen Weg gehen wir, weil get-Vmnetworkadapter uns den Interface-Index nicht zurück liefert, den wir benötigen, um das NAT-Netzwerk einzurichten: 

$natNetworkAdapter = Get-VMNetworkAdapter -ManagementOS -SwitchName $NatSwitch.Name
$networkAdapter = Get-NetAdapter | Where-Object -FilterScript {
     $_.deviceid -eq $natNetworkAdapter.DeviceId
}

Weiterlesen
0 Kommentare

Dateien restlos entfernen und Festplatten rückstandslos löschen mit Windows Bordmitteln

Immer wieder liest man den Mythos, dass man eine Festplatte 37 mal überschreiben muß, bevor die Daten vollständig gelöscht sind. In der aktuellen c´t 13/2016 gibt es dazu einen sehr guten Artikel, der die Hintergründe dazu beschreibt. Das Fazit der Artikelserie lautet: Bei alten MFM-Festplatten, bei denen die Datensektoren der Festplatten noch so groß waren wie Pfannkuchen, war eine Datenwiederherstellung mit den enstprechenden Werkzeugen in der Tat noch möglich. Bei aktuellen magnetischen Datenträgern haben sich die Aufzeichnungsverfahren aber maßgeblich verändert, und auch Datenrettungsunternehmen sind mit Ihren Werkzeugen nicht in der Lage, einmal überschriebene Daten wiederherzustellen. Ach das BSI und das amerikanische Pendant NIST geben als Richtlinie inzwischen heraus, dass eine einfache Überschreibung reicht, um Daten rückstandlos zu entfernen.

Kommen wir nun dazu, wie die Datenlöschung am einfachsten auszuführen ist. Windows bietet dazu 2 Bordmittel an.

Zum Löschen von einzelnen Dateien oder Partitionen auf der Festplatte bietet sich das Tool cipher.exe an. Es ist das Tool zur Kommandozeilensteuerung von EFS (Encrypted File System) und bietet den Schalter /w, mit dem man einzelne Dateien, Ordner oder aber auch ganze Partitionen löschen kann. Um den Ordner c:\Temp\geheim zu löschen und zu überschreiben, geben Sie hierfür ein:

Cipher.exe /w c:\Temp\geheim

Die Löschung kann eine Weile dauern, da die Daten in 3 Durchgängen mit 0, dann mit 1 und anschliessend wieder mit 0 überschrieben werden. Um die ganze Partition zu löschen, geben Sie nur Laufwerksbuchstabe: ein:

Markiert in:
Weiterlesen
0 Kommentare

Root-Zertifikat aus dem Zertifikats-Store entfernen

Haben Sie schon einmal versucht, ein per Gruppenrichtlinien verteiltes Root-Zertifikat wieder zu entfernen? Wie sich herausstellt, ist das über das Zertifikats-Plug-In in der Management-Konsole gar nicht so einfach. Hilfe verschafft hier das Kommandozeilentools Certutil in Verbindung mit Powershell.

Certutil besitzt einen Parameter -delstore, mit dem man Zertifikate aus dem Store entfernen kann. Ruft man Certutil -delstore -? auf, so bekommtn man folgende Optionen angezeigt:

Optionen:

-enterprise -- Verwendet den Unternehmensregistrierungs-Zertifikatspeicher auf dem lokalen Computer
-user -- Verwendet HKEY_CURRENT_USER oder Zertifikatspeicher.
-GroupPolicy -- Gruppenrichtlinien-Zertifikatspeicher verwenden

Verwenden Sie die Option -GroupPolicy für Zertifikate, die per Gruppenrichtlinie verteilt wurden. Der richtige Speicher ist wichtig, da Certutil Ihnen sonst zwar Vollzug vermeldet, aber die Zertifikate nicht löscht. Weiterhin benötigen Sie den Thumbprint (Daumenabdruck oder Checksumme) des zu entfernenden Zertifikats. Den erhalten Sie über Powershell:

Weiterlesen
0 Kommentare

Hyper-V VM per Powershell anlegen und konfigurieren

Das Anlegen einer virtuellen Maschine in Hyper-V geht sehr einfach. Hier zeige ich ein kleines Beispiel, dass eine Generation-2 VM anlegt, konfiguriert und ein ISO-Image zum Starten bereitstellt. 

Zuerst erzeuge ich ein Credential-Objekt, um das ISO-File für die VM aus einer Freigabe zu kopieren. Die Methode PSCredential der Klasse PSAutomation erzeugt uns dafür ein Credential-Objekt, das 2 Parameter benötigt: Den Benutzernamen und das Kennwort.

  • $password = ConvertTo-SecureString -String "Passwort" -AsPlainText -Force
  • $UserName = "Administrator"
  • $adminCred = New-Object System.Management.Automation.PSCredential ($username, $password)

 

Als nächstes wird ein Ordner für das Iso angelegt:

$isoPath = mkdir D:\iso -Force

Markiert in:
Weiterlesen
0 Kommentare

SQL-Server Management Studio kostenlos herunterladen

Ich habe es in meinem letzten Tipp zwar schon einmal kurz erwähnt, aber ich finde, die Info ist trotzdem einen eigenen Eintrag wert. Microsoft hat sich entschieden, das SQL-Server Management Studio als eigenständiges Produkt unabhängig von den restlichen SQL-Server Features weiter zu entwickeln. Damit ist das Management Studio jetzt für jeden frei verfügbar! Das ziemlich cool, denn bisher konnte man nur die eingeschränkte Express-Edition kostenlos installieren. Das vollwertige Management-Studio konnte eigentlich nur mit dem SQL-Server installiert werden. Die RTM ist seit gestern in der Version 13.0.1601.5 offiziell released. Man kann Sie bei MSDN herunterladen

Zusätzliche Informationen zur Version und zu den Features hat man bei SQL-Sentry zusammengetragen. 

Eine Reihe von Erweiterungen für das Management-Studio findet man übrigens im SSMS Tool Pack (leider ab SSMS 2012 nicht mehr kostenlos, aber sehr preisgünstig). Alterantiv bietet sich SSMS Boost mit einer kostenlosen Community-Edition an. Sehr hilfreich und kostenlos zum automatischen Formatieren von Code ist auch der Poor Mans SQL-Formatter

0 Kommentare

SQL Server 2016 Developer Edition (Funktionsidentisch mit Enterprise) jetzt kostenlos!

Immer wenn mein Frust auf Microsoft so richtig groß ist, machen Sie wieder was richtig cooles. Windows 10 nervt mich manchmal mächtig ab. Aber dafür hat Microsoft jetzt die gestern offiziell releaste Version 2016 in der Developer-Edition kostenlos verfügbar gemacht! Die Developer-Edition darf nur für Test-und Programmierzwecke eingesetzt werden, ist aber ansonsten voll Featureidentisch mit der Enterprise-Edition! Man kann Sie direkt bei MSDN herunterladen. Außerdem sollten Sie beachten, dass das SQL-Server Management Studio jetzt nicht mehr Bestandteil der SQL-Server Installation ist, weil es als eigenes Produkt weiterentewickelt wird. Den Link zum Download finden Sie ebenfalls beim MSDN. 

Eine Sache gibt es zu beachten: Die Developer-Edition hat den Netzwerkzugriff im Gegensatz zu den anderen Editions standardmässig deaktiviert. Er kann aber problemlos aktiviert werden. Starten Sie dafür nach der Installation den SQL-Server Configuration Manager und wählen Sie hier unter SQL-Server Network Configuration "Protocols for MSSQL-Server". Hier sehen sie die aktiven Zugriffsprotokolle. TCP/IP ist allerding deaktviert.

Doppelklicken Sie zum Aktivieren auf "TCP/IP". Im folgenden Fenster stellen Sie "Enabled" auf Yes.

Zum Aktivieren des Netzwerkzugriffs ist allerdings ein Neustart des Dienstes notwendig. Der Server läuft bei einer Standardinstanz dann auf Port 1433, bei einer benannten Instanz wird ein dynamischer (automatisch zugewiesener) Port verwendet. Diese Einstellungen können Sie ebenfalls im Configuration Manager ändern, indem Sie den Reiter "IP Addresses" wählen. 

Hier können Sie den Port eintragen, auf dem der SQL-Server Anfragen annehmen soll. Ist hier kein Port eingetragen, aber dafür eine Null bei dynamic Ports gesetzt, wählt der SQL-Dienst bei jedem Start automatisch einen Port. Entfernen Sie die 0 und tragen Sie stattdessen einen festen Port ein, wird dieses Verhalten deaktiviert. Auch für das Ändern des Ports ist ein Neustart notwendig. 

0 Kommentare

Anfordern und einrichten eines (kostenlosen) SSL-Zertifikats unter Windows

In meiner kleinen Reihe über Einrichtung und Verwaltung von Azure wird es auch um die Einrichtung von ADFS-Servern für Office 365 gehen. Für ADFS benötigen Sie, auch für Testzwecke, ein gültiges SSL-Zertifikat. In diesem Artikel zeige ich, wie Sie dafür einen Zertifikatsrequest erstellen und wie Sie bei Comodo ein 90 Tage gültiges SSL-Zertifikat beantragen können. Das Testzertifikat ist ein ganz normales SSL-Zertifikat, das bei Comodo auch verlängert werden kann. Die einzige Einschränkung ist die Laufzeit von 90 Tagen. Für die Verwendung als Zertifikat für Webserver würde ich LetsEncrypt empfehlen, da man hier komplett kostenlose SSL-Zertifikate bekommt. 

SSL-Zertifikats-Request erstellen

Um ein Zertifikat bei einer Zertifizierungsstelle zu beantragen, benötigen Sie eine Zertifikats-Anforderung. Die kann Ihnen z.B. von der IIS-Konsole erstellt werden. Einfacher geht es aber mit einem freien Tool von Digicert, die selber auch Zertifikatsanbieter sind. Laden Sie dazu einfach das Digicert Certificate Utility for Windows https://www.digicert.com/util/ auf den Rechner, auf dem das Zertifikat erstellt werden soll, herunter. Wichtig ist, dass Sie das Tool wirklich auf dem Rechner starten, auf dem das Zertifikat installiert werden soll, da mit dem Zeritifikatsrequest ein privater Schlüssel erstellt wird, der den Rechner nicht verlässt und der zusammen mit dem Zertifikat benötigt wird. Den Schlüssel später auf den Zielrechner zu exportieren ist zwar möglich, aber sehr umständlich. Das Certificate Utility muss auch nicht installiert werden, insofern sollte der Aufruf auch auf einem Server unproblematisch sein.

Das Tool kommt in einem Zip-File. Entpacken Sie es und starten Sie DigicertUtil.exe. Nachdem Sie dem Lizenzvertrag zugestimmt haben, öffnet sich die Digicert-Konsole. Hier Wählen Sie gleich im ersten Fenster oben rechts den Eintrag „Create CSR“.

Geben Sie jetzt die Zertifikatsinformationen ein. Das Utility gibt dabei auch Hilfestellung – auf der rechten Seite finden Sie Informationen zu den Daten, die gewünscht sind. 

 

Weiterlesen
0 Kommentare

Office 365, Azure AD, ADSync und ADFS - eine Einführung und Begriffsklärung

Mit diesem Artikel beginne ich eine kleine Serie zum Thema Office 365 Benutzerverwaltung. Im ersten Teil möchte ich erst einmal klären, wie Office 365 und Azure AD zusammen hängen und wofür man den Azure AD Sync Dienst und Active Directory Federation Services (ADFS) benötigt. 

Wofür brauche ich Azure AD, wenn ich doch Office 365 einsetze?

Azure AD (Actice Directory) ist ein Benutzerverzeichnis, das von Microsoft ohne Installation eines eigenen Servers auf den Microsoft-Servern bereitgestellt wird. Office 365 verwendet Azure AD zur Speicherung Ihrer Office 365 Benutzerkonten. Dafür wird beim Anlegen eines Office 365-Accounts automatisch ein Azure-AD Verzeichnis angelegt.
Azure AD speicher Ihre Benutzerinformationen. Immer, wenn Sie im Office 365 einen neuen Benutzeraccount anlegen oder Benutzerinformationen ändern, werden tatsächlich Änderungen im Azure AD durchgeführt.

Benutzer mit einem lokalen AD zusammenführen

Um zu verhindern, dass Ihre Benutzer sich mehrere Kennwörter merken müssen – eins für Ihr Outlook und Sharepoint, und eins für Ihre lokale Anmeldung am PC – hat Microsoft die Möglichkeit zur Verfügung gestellt, Ihre Benutzerkonten ins Azure AD zu synchronisieren. Dafür benötigen Sie ein Tool namens Azure AD Sync (ehemals Dirsync), das Sie auf einem Server in Ihrem Netzwerk installieren („On Premise“). AAD Sync prüft in regelmäßigen Abständen Ihre Verzeichnisse (lokales AD oder, wenn eine Rücksynchronisation gewünscht wird, auch Ihr Azure AD) und synchronisiert Daten wie Kennwörter zwischen den Verzeichnissen. Die synchronisierten Verzeichnisse bleiben nach wir vor getrennt, aber die Daten können auf dem gleichen Stand gehalten werden. Die Synchronisation kann jederzeit abgebrochen werden.
Durch AAD Sync brauchen Ihre Benutzer sich nur noch ein Kennwort zu merken, da die Kennwörter im lokalen AD und im Internet immer gleich sind. Was Azure AD jedoch nicht leisten kann ist ein Single Sign on, wie er normalerweise auf einem Domänen-PC ausgeführt wird. Das bedeutet, daß z.B. der Zugriff auf Ihren Office 365 Sharepoint eine zusätzliche Anmeldung auf der Sharepoint Website erfordert, auch wenn das Kennwort lokal wie auf dem Sharepoint dank Azure AD das gleich ist. Um einen Single Sign on zu ermöglichen, benötigen Sie ADFS (Active Diretory Federation Services).

Single Sign on mit Office 365

Damit Ihre Benutzer nicht für jede Office 365 Ressource eine Anmeldung durchführen müssen, sondern wie in einem lokalen Netzwerk üblich nur eine Anmeldung am PC durchführen und dann Zugriff auf alle Ressourcen haben, benötigen Sie Active Directory Federation Services (ADFS).
ADFS ist ein Dienst, der dazu dienst, die Anmeldungen von Websites „befreundeter“ Unternehmen in Ihr AD umzuleiten. Ein Beispiel für ähnliche Dienste, die Sie vermutlich zumindest schon oft gesehen haben, sind die Anmeldungen auf Websites via Google oder Facebook.

Anstatt auf einer Website ein neues Benutzerkonto anzulegen, verwenden Sie einfach Ihren Google-Account. Das Prinzip dahinter funktioniert so, dass die Website, an der Sie sich anmelden, Ihren Client im Hintergrund an den Anmeldeserver von Google weiterleitet. Ihre Google-Anmeldeinformationen werden von Google überprüft, und wenn Sie sich korrekt angemeldet haben, wird Ihrem Client ein Anmeldetoken ausgestellt und digital signiert (vor Änderungen geschützt und mit einem Stempel versehen, der sicher stellt, dass das Anmeldetoken wirklich von Google erzeugt wurde). Dieses Anmeldetoken gibt Ihre Clientsoftware an die Website zurück. Da die Website google vertraut, kann Sie nun die Anmeldeinformationen von Google verwenden, um für Sie ein Konto zu erstellen, dass mit dem Google-Konto verknüpft ist.

0 Kommentare

Die Startzeit / Reboot des Servers herausfinden

Jefrey Snover hat gerade ein Modul in der Powershell Gallery gepostet, das die letzte Reboot-Zeit aus dem Eventlog ausliest: https://www.powershellgallery.com/packages/get-lastreboot/0.1.1/DisplayScript. Dabei fiel mir ein, dass es doch auch noch dieses tolle Tool Systeminfo gibt, dass an der Kommandozeile alle möglichen Systeminformationen ausgibt - auch die Systemstartzeit. Das großartige an diesem Tool ist aber, dass es die Ausgabe auch ins csv-Format umwandeln kann, indem man den Parameter -FO aufruft. Die gesamten Informationen werden dann ins csv-Format umgewandelt, mit dem Powershell wiederum ganz hervorragend umgehen kann. Und so kann man dann ganz hervorragend die Daten von systeminfo direkt in Powershell weiterverarbeiten: 

systeminfo /FO csv | convertfrom-csv

Das Ergebnis sieht so aus: 

Hostname : ACER1
Betriebssystemname : Microsoft Windows 10 Pro
Betriebssystemversion : 10.0.10586 Nicht zutreffend Build 10586
Betriebssystemhersteller : Microsoft Corporation
Betriebssystemkonfiguration : Eigenst?ndige Arbeitsstation
Betriebssystem-Buildtyp : Multiprocessor Free
Registrierter Benutzer :
Registrierte Organisation :
Produkt-ID : 00330-80000-00000-AA738
Urspr?ngliches Installationsdatum : 25.02.2016, 16:47:17
Systemstartzeit : 19.05.2016, 09:17:11
Systemhersteller : Acer
Systemmodell : Aspire V3-771
[...]

Und natürlich können wir jetzt auch das machen: 

Weiterlesen
0 Kommentare

Datenbanken migrieren von mySQL zu SQL-Server

SQL-Server und mySql sind leider SQL-seitig nicht wirklich kompatibel. So gibt es zwar die Möglichkeit, eine Datenbank in mySQL als Script zu exportieren, aber leider kann man das Script auf dem SQL-Server nicht mehr für den Import benutzen. Der beste Weg für den Import führt daher über den SQL Server Migration Wizard. Der Migration Wizard steht für verschiedene Datenbanken zur Verfügung und hilft z.B. auch bei der Migration von Access-Datenbanken zu SQL-Server. Da das Tool recht komplex ist, möchte ich hier nur kurz zeigen, wie man eine einfach Migration durchführt, ohne auf die schmutzigen kleinen Details des Tools eingehen zu wollen. Ich verwende hierzu die derzeit aktuelle Version 6.0.1, 6.1 (für SQL-Server 2016) ist derzeit in der Beta-Phase.

Sie benötigen auf dem Rechner, auf dem Sie den SSMA einrichten wollen, zuerst einmal einen mySQL-ODBC-Treiber. Haben Sie die mySQL-Datenbank unter Windows auf dem gleichen Rechner installiert, dann müssen Sie nichts weiter machen, denn mySQL installiert den passenden ODBC-Treiber gleich mit. Ansonsten laden Sie den Treiber einfach bei mysql.com herunter. Nutzen Sie den 64-Bit Treiber, der SSMA wird nämlich auch in einer 64-Bit-Version installiert. Eine Konto für die Authentifizierung ist übrigens nicht notwendig, klicken Sie einfach auf den Link "No thanks, just start my download", wenn Sie nach Ihrem Login gefragt werden. Anschliessend installieren Sie den SSMA.

Wenn Sie den Migration Assistenten zum ersten Mal starten, müssen Sie ein Migrationsprojekt erstellen. Wählen Sie hierfür im Menü File "New Project" aus. Wichtig ist, dass Sie im folgenden Fenster das Migrationsziel auswählen. Standardmässig ist hier Azure angegeben. Leider können Sie das Ziel im Projekt selber dann nicht mehr ändern. Das kann ziemlich verwirrend sein!

Nun müssen Sie eine Verbindung zum Quell- und zum Zielsystem herstellen. Wählen Sie hierfür in der Toolbar zuerst "Connect to MySql". Wählen Sie im Verbindungsfenster den Provider aus - dies ist der ODBC-Treiber, den Sie installiert haben. Ist hier kein Treiber sichtbar, obwohl Sie einen Treiber installiert haben, dann prüfen Sie, ob Sie den Treiber und SSMA beide in der gleichen Version (32-Bit / 64-Bit) installiert bzw. gestartet haben. Außerdem benötigen Sie den Namen des Quellservers, den mySQL-Port (standardmässig 3306), sowie ein Konto mit Leserechten auf dem mySQL-System. 

Nun verbinden Sie sich mit dem SQL-Server. 

Markiert in:
Weiterlesen
0 Kommentare

Reporting-Generierung per SQL-Agent-Job starten

Von Haus aus können SQL-Reports nur zeitgesteuert oder manuell generiert werden. Aber mit Powershell geht es auch als SQL-Job. SQL-Server Reporting-Services bietet die Möglichkeit, einen Report automatisch zu generieren und zu verschicken. Dies geschieht allerdings zeitgesteuert - eine jobgesteuerte Generierung ist von Haus aus nicht möglich. Zum Glück werden die Reporting-Services aber über einen Webdienst angesteuert, und dies kann man sich über ein Script nutzbar machen. In diesem Beispiel verwenden wir Powershell in einem SQL-Server Agent-Job. Es handelt sich hierbei nur um ein Funktionsbeispiel und muß natürlich noch angepasst werden. Außerdem ist zu beachten, dass das ausführende Konto über "Generate Events"-Rechte auf dem Report-Server verfügen muß, über die auch der Admin standardmässig nicht verfügt!

# Der URI zum Report-Server Webdienst für SQL 2008 R2
$RSService = "http://localhost/ReportServer/ReportService2010.asmx?wsdl"
# Aufruf mit Default-Credentials
$RSServiceProxy = New-WebServiceProxy -uri $RSService -class RS2 -Namespace ReportingWebservice -UseDefaultCredential
# Alterantiv aufruf mit einem anderen Benutzernamen - die Credentials werden im Beispiel per Eingabefenster abgefragt. 
$RSServiceProxy = New-WebServiceProxy -uri $RSService -class RS2 -Namespace ReportingWebservice -Credential Get-Credential
# Anzeigen der verfügbaren Subscriptions
$RSServiceProxy.ListSubscriptions("")
# Speichern der ID des Jobs "Sales_Order_Details_2008R2
$id = $RSServiceProxy.ListSubscriptions("") | where Report -eq "Sales_Order_Detail_2008R2" | select subscriptionID -ExpandProperty
# Starten des Jobs
$RSServiceProxy.FireEvent("TimedSubscription",$id,"") # Achtung! Bei älteren Versionen gibt es den 3. Parameter (site, für Sharepoint-Integrated), nicht!

Für ältere Reporting-Services müssen die ersten beiden Zeilten lauten:

# Der URI zum Report-Server Webdienst für SQL 2005
$RSService = "http://localhost/ReportServer/ReportExecution2005.asmx?wsdl"
$RSService = New-WebServiceProxy -uri $ReportExec -class RS -Namespace ReportingExecWebservice -UseDefaultCredentials
0 Kommentare

By accepting you will be accessing a service provided by a third-party external to https://www.netz-weise-it.training/

Nach oben