Die RemoteDesktopServices und vor allem die RemoteApps unter Windows 2012 und 2012 R2 sind ja eine wunderbare Lösung. Das einzige nervige ist, dass man standardmäßig sich immer noch neben der Authentifizierung am lokalem Windows noch zusätzlich beim ersten Verbinden mit dem RemoteDesktop-Server das Kennwort eingeben muss.

In meinem Setting werden Clients mit Windows 7 und Windows 8 / 8.1 mit Hilfe der integrierten RemoteApp- und Desktopverbindung an einen Windows Server 2012 R2 (hier als Beispiel mit dem Namen TS.TEST.LOCAL) angebunden (Anleitung zur einfachen Anbindung / automatischen Konfiguration per Gruppenrichtlinien gibt es z.B. hier).

RemoteDesktopVerbindung1

RemoteDesktopVerbindung2

Beim ersten starten einer RemoteApp-Sitzung wird aber Standardmäßig immer wieder das Passwort abgefragt.

Das Problem lässt sich aber einfach umgehen:

Man erstellt auf eine Gruppenrichtlinie und wendet diese auf die Computer an, auf denen die Benutzer die RemoteApps benutzen.

Computerkonfiguration
Richtlinien
Administrative Vorlagen
System
Delegierung von Anmeldeinformationen
Delegierung von Standardanmeldeinformationen zulassen

In die Liste muss nun der Computername des Terminalservers mit dem Präfix TERMSRV/ vorangestellt eingetragen werden – ich trage immer den Servernamen und den FQDN des Server ein – in meinem Beispiel eben

TERMSRV/TS
TERMSRV/TS.TEST.LOCAL

Gruppenrichtlinie

Gruppenrichtlinie-Uebersicht

Die Richtlinie wie gesagt auf die Rechner anwenden auf denen die RemoteApps verwendet werden – Rechner durchstarten – funktioniert!

Zur Installation von Mac OS X 10.10 Yosemite auf einem Mac benutzt man ja entweder den integrierten Installer oder man erstellt sich einen USB-Stick (Anleitung) – in Paralles, VMWare, VirtulBox und anderen Virtualisierungsumgebungen ist es aber am einfachsten von einer ISO zu booten. Diese zu erstellen ist eigentlich ganz einfach:

1) Mac OS X 10.10 Yosemite im Mac App Store Downloaden

YosemiteMacAppStore

2) Terminal öffnen und folgende Befehle ausfüren

hdiutil attach /Applications/Install\ OS\ X\ Yosemite.app/Contents/SharedSupport/InstallESD.dmg -noverify -nobrowse -mountpoint /Volumes/install_app

hdiutil convert /Volumes/install_app/BaseSystem.dmg -format UDSP -o /tmp/Yosemite

hdiutil resize -size 8g /tmp/Yosemite.sparseimage

hdiutil attach /tmp/Yosemite.sparseimage -noverify -nobrowse -mountpoint /Volumes/install_build

rm /Volumes/install_build/System/Installation/Packages

cp -rp /Volumes/install_app/Packages /Volumes/install_build/System/Installation/

cp -rp /Volumes/install_app/BaseSystem.chunklist /Volumes/install_build

cp -rp /Volumes/install_app/BaseSystem.dmg /Volumes/install_build

hdiutil detach /Volumes/install_app

hdiutil detach /Volumes/install_build

hdiutil resize -size `hdiutil resize -limits /tmp/Yosemite.sparseimage | tail -n 1 | awk ‚{ print $1 }’`b /tmp/Yosemite.sparseimage

hdiutil convert /tmp/Yosemite.sparseimage -format UDTO -o /tmp/Yosemite

rm /tmp/Yosemite.sparseimage

mv /tmp/Yosemite.cdr ~/Desktop/Yosemite.iso

YosemiteISO

Die ISO landet am Ende auf dem Schreibtisch. Viel Spaß damit 🙂

Quelle: http://blog.b-nm.at

Ich hatte mal die Aufgabe eine einfache Lösung zur Benachrichtigung per Mail bei Dateierstellung zu finden. Gebraucht wurde dass für Backup-Dateien die per FTP auf ein Windows-System hochgeladen wurden. Ich habe das als Powershell-Script gelöst dass einfach alle Stunde ausgeführt wird.

Hier mal der Code des Scriptes:

#Email-Funktion
function sendmail($Betreff,$body)
{
$SmtpClient = new-object system.net.mail.smtpClient("smtp.email-server.local", 587)
$MailMessage = New-Object system.net.mail.mailmessage
$SmtpClient.Credentials = New-Object System.Net.NetworkCredential("benutzername", "kennwort")
$SmtpClient.EnableSsl = $true
$mailmessage.from = "absender@e-mail.local"
$mailmessage.To.add("ziel@e-mail.local")
$mailmessage.Subject = $subject
$MailMessage.IsBodyHtml = $true
$mailmessage.Body = $body
$smtpclient.Send($mailmessage)
}

#Pfadangabe
$path = "D:\Backup"
if (!$path) 
{break}
if ($path.length -gt 3) 
{$path=$path + "\"}

#LogFile
$LogFile = "D:\Backup-log.log"

#Ueberwachung
$date1Hours = (Get-Date).AddHours(-1) 
$data =  Get-ChildItem $path -recurse -filter "*.tgz" | where-object {$_.CreationTime -gt $date1Hours -or $_.LastWriteTime -gt $date1hours } 

foreach ($file in $data)
{
	if ($file)
	{
	$filepath = $file.fullname
	$pathname = $filepath.split("\")[-2]
	$dataname = $filepath.split("\")[-1]
	$filesize = $file.Length/1mb

	$out = "In " + $pathname + " wurde ein Backup erstellt. Die Datei: " + $dataname + " wurde am " + $file.CreationTime + " erstellt." + " Größe: " + $filesize + " MB"
    write-host $out
	
	#LogFile schreiben - anhängend
   	$out | Out-File $LogFile -append

	#Email-Text
   	$subject = "Backup von " + $pathname + ". Größe: " + $filesize + " MB"
   	$body = "In " + $pathname + " wurde ein Backup erstellt. Die Datei: " + $dataname + " (Größe: " + $filesize + "MB)" + " wurde am " + $file.CreationTime + " erstellt."
  	 
	#Email-Senden	
   	sendmail $Betreff $body
   	}
}

Die Ordner unter D:\backup heißen so wie die System die gesichert wurden – deshalb steht im Betreff der Mail sowas wie: „Backup von Web-Server-1. Größe: 2568 MB“. So kann man das auch schön zuordnen.
Das Script durchsucht die Ordner und filtert alle Dateien mit .tgz aus die jünger wie 1 Stunde sind – und schickt dann für jede Datei die E-Mail.

Ein wenig Quick-and-Dirty – aber hat gemacht was es soll 🙂