Anwendungen

UltraEdit-Alternativen

29. Januar 2018 · Anwendungen · andreas · 1 Kommentar

Nachdem es bei UltraEdit zu einer für den Kunden alles andere als vorteilhaften Umstellung des Lizenzmodells kam, stellt sich die Frage, welche Alternative(n) in Frage kommen. Die Wahl eines Editors hängt hierbei extrem vom jeweiligen Anforderungsprofil ab, den richtigen Editor für jedermann kann und wird es nicht geben.

Wer die Anwendung morgens einmal startet, um den ganzen Tag kontinuierlich an einem Projekt zu arbeiten, für den spielen andere Kriterien eine Rolle wie für einen Systemadministrator, der öfter ein paar Änderungen an einem Skript oder einer Konfigurationsdatei vornehmen muss - das vielfältige Spektrum möglicher Vor- und Nachteile erstreckt sich von der reinen Startzeit über integrierte Funktionalitäten wie GitHub oder einen Debugger.

Neben der Wikipedia-Liste der Texteditoren bieten sich insbesondere die Developer Survey Results 2017 von stackoverflow als Grundlage für die Auswahl der Testkandidaten an.

Weiterlesen


UltraEdit-Lizenzierung

20. Dezember 2017 · Anwendungen · andreas · Kein Kommentar

Eine Neuinstallation des Betriebssystems ist in der Regel eine willkommene Möglichkeit, die täglich benutzten Werkzeuge auf aktuellen Stand zu bringen. Also kurz die im Februar verlängerte UltraEdit-Lizenz überprüft

=====================================================
UltraEdit License Key
=====================================================

UltraEdit Key - Your license is for version v24.x (Windows) and will work with the Windows, Mac, and Linux versions.

anschließend die aktuelle Version von UltraEdit (24.20.0.51) heruntergeladen und installiert. Leider folgte beim Klick auf “Aktivieren” eine unangenehme Überraschung:

Mit dem Lizenzschlüssel, der lt. E-Mail für die Version “v24.x” gültig ist, lässt sich die Version “v24.20” nicht aktivieren.

Eine kurze Nachfrage beim Hersteller IDM Software brachte Klarheit, daß es sich hierbei um ein Feature und nicht um einen Bug handelt:

This purchase included an upgrade to the latest version and the next release free, however it did not include 1 year of free upgrades. This license is eligible to run v24.10 of UltraEdit.

Tatsächlich hat sich wohl bei der Verlängerung der Lizenzen etwas geändert, ohne daß man als Kunde explizit darauf aufmerksam gemacht wurde. Sowohl auf der Website als auch in der Lizenzierungs-E-Mail steht neuerdings

Upgrades: 1 free upgrade to next release (standard)

wohingegen in früheren Lizenz-E-Mails

Upgrades: 1 Year (standard)

angegeben war.

Letztendlich scheint sich “next release” tatsächlich auch auf “Minor release” zu beziehen (also die Zahl nach dem Komma), wodurch aus meiner Sicht die Angabe “v24.x” zwar falsch ist, auf explizite Nachfrage vom Support aber so bestätigt wurde:

Next release means the next version that is released for the product. For example, if you purchase a license for v24.00, then the next version that was released after that would have been v24.10. A free upgrade to the next release does include major and minor releases. While the upgrade may be a minor release, all our releases include new features and enhancements that benefit the user.

Als zahlender Kunde kann man hier nur verständnislos den Kopf schütteln, hat die Lizenzverlängerung (die mit immerhin rund 50€ zu Buche schlägt) für gerade einmal 9 Monate “gereicht”.

Glücklicherweise gibt es eine große Anzahl an sinnvollen Alternativen - die Developer Survey Results 2017 von stackoverflow bieten für die Auswahl eine gute Grundlage.


Vorschau-Updates auf dem WSUS automatisch ablehnen

5. September 2017 · Anwendungen · andreas · 1 Kommentar

Leider hat Microsoft in der GUI des WSUS keine Möglichkeit vorgesehen, die monatlichen Vorschau-Updates beim Einsatz automatischer Genehmigungen über einen Filter ausschließen zu können.

Gelöst werden kann diese Problem mittels der Powershell bzw. eines Powershell-Skripts, das auch als Powershell-Laie mit einem guten Tutorial sowie Google in endlicher Zeit zusammengesucht- und kopiert werden kann.

Als erstes müssen die für WSUS notwendigen Assemblies geladen werden

[reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration") | Out-Null

Dann wird die Verbindung zum WSUS-Server hergestellt

$wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::getUpdateServer()

Sofern die Freigabe der Updates nicht für alle Computer, sondern nur für bestimmte Gruppen vorgenommen werden soll, kann die entsprechende Gruppe zur späteren Verwendung festgelegt und zur Kontrolle ausgegeben werden

$group = $wsus.GetComputerTargetGroups() | where {$_.Name -eq 'Update mit WSUS'}
Write-Host ($group | Format-Table | Out-String)

Für die Freigabe bzw. das Ablehnen interessieren nur solche Updates, die zum einen noch nicht genehmigt (oder abgelehnt) wurden und auch erforderlich sind:

$updateScope = New-Object Microsoft.UpdateServices.Administration.UpdateScope
$updateScope.ApprovedStates = [Microsoft.UpdateServices.Administration.ApprovedStates]::NotApproved
$updateScope.IncludedInstallationStates = [Microsoft.UpdateServices.Administration.UpdateInstallationStates]::NotInstalled

Zu Informationszwecken kann die Menge an zu bearbeitenden Updates ausgegeben werden

$totalUpdateCount = $wsus.GetUpdateCount($updateScope)
Write-Host "Updates to process:", $totalUpdateCount

Dann werden die Updates in einer Schleife abgearbeitet

$wsus.GetUpdates($updateScope) | ForEach {

  Write-Host $_.Title, "- " -NoNewline

Sofern im Titel kein “Preview of” vorkommt, soll das Update genehmigt werden. Die Titel werden in englischer Sprache verarbeitet, so daß nach “2017-05 Preview of Monthly Quality Rollup for Windows 7 for x86-based Systems (KB4019265)” statt “2017-05 Vorschau des monatlichen Qualitätsrollups für Windows 7 für x86-basierte Systeme” gesucht werden muss:

  if (-not ($_.Title -like "*Preview of*")) {

Falls zur Installation eine Lizenzvereinbarung angenommen werden muss, kann dies ebenfalls über das Powershell-Skript erfolgen

    if ($_.RequiresLicenseAgreementAcceptance) {
      $_.AcceptLicenseAgreement()
    }

Anschließend wird das Update zur Installation in der oben festgelegten Gruppe genehmigt:

    $_.Approve("Install", $group)
    Write-Host "approved" -ForegroundColor green
  }

Sofern es sich um ein Vorschau-Update handelt, wird das Update stattdessen abgelehnt

  else {
    $_.Decline()
    Write-Host "declined" -ForegroundColor red
  }
}

Am Ende des Skripts erfogt dann noch die Ausgabe, daß das Skript tatsächlich am Ende angekommen ist

Write-Host "done."

AMD External Events Utility loswerden

2. September 2017 · Anwendungen · andreas · Kein Kommentar

Nach dem Wechsel von einer AMD zu einer NVIDIA-Graphikkarte blieb, trotz der Anweisung an den Uninstaller, bitte alles von AMD zu entfernen, noch das AMD External Events Utility als Dienst installiert, welches bei jedem Systemstart automatisch ausgeführt wurde. Leider ist unter “Programme und Funktionen” keine weitere Möglichkeit vorgesehen, den nicht mehr benötigten Dienst loszuwerden.

Der erste Weg sollte in die Dienst-Verwaltung von Windows führen, wo neben der Änderung des Starttyps auf “Deaktiviert” der Dienst auch direkt gestoppt werden kann.

Gleichzeitig kann aus diesem Dialog auch der interne Name des Dienstes (in diesem Fall identisch mit dem Anzeigenamen) sowie der Pfad zur ausführbaren Datei entnommen werden.

Die graphische Oberfläche bietet leider keine weiteren Möglichkeiten, einen Dienst aus dem System zu entfernen, dies kann aber über die Kommandozeile vorgenommen werden.

Nachdem man sich mit “query” nochmal vergewissert hat, auch den richtigen Dienst löschen zu wollen

C:\Windows\system32>sc query "AMD External Events Utility"

SERVICE_NAME: AMD External Events Utility
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 1  STOPPED
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

kann die eigentliche Löschung dann mittels dem Parameter “delete” der Dienst aus der Systemkonfiguration entfernt werden.

C:\Windows\system32>sc delete "AMD External Events Utility"
[SC] DeleteService ERFOLG

Wer mutig ist noch weiter aufräumen möchte, kann anschließend noch eine Säuberung des “%SYSTEMROOT%\System32”-Verzeichnisses vornehmen, in dem aber neben der eigentlichen Dienstdatei “atiesrxx.exe” noch weitere 37 Dateien zu finden sind, welche alle mit “ati*” beginnen.


WordPress, Joomla! und die Sicherheit

19. Mai 2017 · Anwendungen · andreas · Kein Kommentar

Erinnert sich noch jemand an die “Fairy Ultra”-Werbung mit Villarriba und Villabajo?

Zwei fiktive spanische Dörfer, die jeweils nach einer großen Party ihre Pfannen schrubben. Und während die Bewohner von Villabajo (mit herkömmlichem Spülmittel) noch tapfer vor sich hin putzen, wird in Villarriba (die Fairy Ultra nehmen) schon wieder gefeiert.

Der Vergleich hinkt zwar, aber trotzem spiegelt das die Situation der beiden oben genannten Content Management Systeme irgendwie wider:

Am 12. Mai veröffentlichte das Joomla!-Team eine Sicherheitsankündigung mit dem Hinweis, Joomla!-Installationen mit erscheinen des nächsten Updates am 17.05.2017 um 16 Uhr möglichst direkt zu aktualiseren.

Mit der Veröffentlichung von Joomla! 3.7.1 wird u.a. eine kritische Sicherheitslücke geschlossen. Das Update erscheint voraussichtlich am 17.05.2017 um 16 Uhr.

Das Joomla Sicherheits-Team (JSST) wurde über eine kritische Sicherheitslücke im Joomla! Core informiert. Da dies eine sehr wichtiger Sicherheitspatch ist, bereitet euch bitte darauf vor, eure Joomla Seiten nächsten Mittwoch zu aktualisieren.

Solch ein Hinweis ist richtig und wichtig, doch in einer globalen Welt ist es nicht überall zum gleichen Zeitpunkt 16 Uhr. Und während die einen in der Nachtruhe schlummern, sind andere unterwegs fernab jedes PCs und der Patch - mit dessen Erscheinen auch die kritische Sicherheitslücke selbst bekannt wird - wird nur auf einem Bruchteil der Systeme zeitnah (also innerhalb weniger Minuten) eingespielt werden können. Es beginnt ein Wettrennen - auf der einen Seite finstere Gestalten, die möglichst schnell die Sicherheitslücke auszunutzen wollen und auf der anderen Seite Admins, die versuchen, die von Ihnen betreuten Systeme zeitnah zu aktualisieren.

Ganz anders dagegen in der WordPress-Welt, seit mit Version 3.7 automatische Hintergrund-Updates eingeführt wurden: während der Administrator dieser Seiten in der Nacht vom 16. auf den 17. Mai vor sich hinschlummerte, hat sich WordPress automatisch auf die Version 4.7.5 aktualisiert und anschließend per E-Mail darüber informiert.

Sicherlich sind automatische Updates kein Allheilmittel und bergen die Gefahr, dass eine Aktualisierung nicht reibungslos verläuft und die Funktionalität einer Website beeinträchtigt wird. Vorbehalte gegen solche Automatismen gibt es - besonders bei denjenigen, die sie nicht verwenden - viele und viele Unternehmen haben bei der aktuell durch die Welt schwappenden Erpressungstrojaner-Welle mal wieder gezeigt, wie wenig hilfreich es ist, monatelang auf Systemaktualisierungen zu verzichten.

Betrachtet man die Zahl an Websites von Privatleuten, klein(er)en Unternehmen und Vereinen, deren Komplexität durchaus überschaubar ist und deren Admin meist nach dem “Du machst doch irgendwas mit Computer, kannst Du nicht mal …” ausgewählt wurde, scheinen automatische Updates eine sinnvolle Möglichkeit, ohne allzu hohes Ausfallrisiko die Sicherheit für den Betreiber und auch Dritte (sowohl Besucher der Website als auch andere Kunden in shared Hosting Umgebungen) deutlich zu erhöhen.

Wer sich für viel Geld eine hochkomplexe Webpräsenz erstellen lässt, der ist seinem dedizierten Admin hoffentlich für eine Rechnung mit Nachtzuschlag dankbar, weil dieser im Bedarfsfall um 2 Uhr Nachts lieber geschrubbt statt gefeiert hat.