Thomas Woelfers Baustatik Blog

Baustatik-Software und was sonst des Weges kommt

SSL für die.de Webseiten

Unsere Webseiten (auf den Servern www.die.de und blogs.die.de ) sind ab sofort (eigentlich schon ab dem 20.08) auch per HTTPS erreichbar. Wenn man also statt

http://www.die.de

https://www.die.de

eingibt, bekommt man die gleiche Seite. Für den Besucher ist der einzige Unterschied, eine leicht markierte Adresszeile. Im Edge (Der Browser von Windows 10) sieht das dann so aus:

Ohne “s”
image

Mit “s”
image

Bei anderen Browsern ist das ähnlich. So sieht das zum Beispiel im Chrome (mit https) aus:

image

Das “S” im Namen des Protokolls steht für “Secure”. HTTPS bedeutet also “Hypertext Transfer Protocol Secure”.

Nun ist es ja so, das die Inhalte auf unseren Webseiten nicht gerade geheim sind – darum stehen die Dinge ja gerade auf öffentlichen Webseiten. Das einzige was vielleicht einigermaßen schützenswert ist, ist ‘vielleicht’ das Passwort der Foren-Benutzer. Aber ehrlich gesagt: So Turbo-Wichtig ist das Passwort für unser Webforum nun auch wieder nicht.

Was soll also die Sache mit der “Sicherheit”?

Wie immer, wenn es um IT-Sicherheit geht, ist das ganze etwas kompliziert, schwierig zu erklären – und hat weit gehende Konsequenzen. Ich versuche es trotzdem mal einfach….

 

Prinzipiell ist es so, das mit den übertragenen Daten bei einer Verbindung über HTTPS 2 Dinge passieren: Zum einen werden die Daten verschlüsselt, zum anderen ist in die Verschlüsselung ein Mechanismus eingebaut, der das verändern der Daten während der Übertragung verhindert. Die Verschlüsselung ist prima für Passworte und Suchbegriffe – ein “Lauscher”, also eine Person die die Daten zwischen dem Webbrowser und dem Server mithören kann, ist dann nicht mehr in der Lage diese Passworte aus dem Datenverkehr zu extrahieren. Und es können einen ganze Menge Leute mithören:

  • Jeder, der sich im gleichen WIFI Netz befindet.
  • Jeder, der sich auch nur in der Nähe des WiFi Netzes befindet. (Völlig egal ob es sich um ein “sicheres” WiFi Netz handelt oder nicht – die “Sicherheit” von WiFi Netzen ist ausschließlich juristischer Art: Technisch gesehen sind die Dinger ohne besonders großen Aufwand zu knacken, und zwar immer, und auch von “Anfängern”.)
  • Jeder, der sich am gleichen Kabelnetz befindet. Also z.b. der Kollege im anderen Zimmer, der den gleichen Router verwendet.
  • Jeder, der in den verwendeten Router eingedrungen ist und den infiziert hat – und das werden immer mehr.
  • Jeder, dem der Router gehört. (Mal angenommen, sie sitzen mit dem Laptop in einem Kaffee, am Flughafen, im Bahnhof, oder sonst wo. Dann wollen Sie ins Internet und suchen nach einem Hotspot. Und der wird auch angeboten: Sind Sie sicher, das der auch sauber ist? Wenn ja – warum eigentlich ?)
  • Die komplette Technik aller beteiligten Internet-Anbieter. Also die, Ihres eigenen Anbieters, die des Anbieters, über den den besuchte Server angeschlossen ist, und alle, die dazwischen sind.
  • Es gibt bestimmt noch mehr, aber das Problem ist an dieser Stelle wohl grundsätzlich klar….

Im Fall von unseren Webserver sind das ja nun wie gesagt keine besonders geheimen Daten, die da übertragen werden. Man kann sich also auf den Standpunkt stellen, die Verschlüsselung wäre da nicht so wichtig. (Dieser Standpunkt wäre aus meiner Sicht zwar falsch, aber die zugehörige Diskussion ist für die weitere Betrachtung irrelevant.)

Der interessante Teil ist der, bei dem sichergestellt wird, das die Daten nicht verändert werden können. Denn jeder aus der obigen Liste der Mithörer ist auch ein Kandidat fürs verändern der gelieferten Daten: Sie rufen also zum Beispiel www.die.de auf und erwarten die Startseite unseres Server zu erhalten. Und die erhalten Sie auch – nur hat irgendwer zwischendrin irgendwas zusätzliches reingefummelt – zum Beispiel ein Script, das zunächst Ihren Browser und dann Ihre Rechner angreift. Von Ihrer lokalen Festplatte aus, denn Sie haben es ja selbst runtergeladen. Oder etwas schlimmer: Sie laden einen Download von www.die.de herunter – und der Mann in der Mitte verändert das Programm so, das er auch einen Teil von seinem Programm einschmuggelt. Das Sie dann über den ganz normalen Installer mit installieren… (Unsere Programm sind dagegen zwar mit einer digitalen Signatur geschützt, aber es ist sicherlich besser, schon beim Transport sicherzustellen, das sie nicht verändert werden können.)

Lange Rede kurzer Sinn: Das “S” beim HTTPS führt dazu, das Sie unsere Webseite besuchen können, ohne sich über derartige Probleme sorgen machen zu müssen. In dem Zusammenhang noch ein wichtiger Hinweis: Wenn Sie mit dem Laptop oder Tablett öfter mal einen öffentlichen Hotspot verwenden: Mein Rat wäre, dabei keine Seiten aufzurufen, die nicht per HTTPS erreichbar sind. (Und Sie arbeiten ja hoffentlich auch nie mit einem Admin-Konto, oder ? [Jaja – ist mir klar das Sie das doch tun: Ich hab Sie aber gewarnt Smiley ]),

 

* Dieser Beitrag wurde aufgezeichnet. Thomas ist gerade in Urlaub

Änderungen bei den Makros

Die Baustatik konnte man schon vom ersten Tag an mit selbst programmierten Makros erweitern: Das bietet sich zum Beispiel dann an, wenn man immer wieder sehr ähnlich Bauteile berechnet, bei denen sich nur wenige Parameter ändern – zum Beispiel Hochregal-Systemlager. Andere Kunden gehen da sogar deutlich weiter, so existiert beispielsweise ein Makro, das automatisiert die Berechnungsergebnisse der Platte in eine Datei exportiert, die vom CAD-System ZEIG gelesen werden kann.

Allerdings hat sich an den Makros auch nicht besonders viel getan. Bis jetzt: Denn ab dem nächsten Update gibt es eine völlig neue Makro-Umgebung. Das betrifft sowohl das Fenster zur Auswahl der auszuführenden Makros, als auch den Makro-Editor selbst.

image

Das beste Werkzeug zum bearbeiten von Makros ist weiterhin Visual Studio – aber zum schnellen bearbeiten oder für kurze Korrekturen gehts mit dem Editor eben einfach schneller.

Und das ist neu am Editor:

  • Es gibt nun keine “merkwürdigen” Dialoge zum anlegen oder öffnen von Makros mehr. Statt dessen gibt es die ganz normalen Windows-Fenster zum öffnen und speichern von Dateien.
  • Es gibt nun Undo und Redo
  • Es gibt ein ganz brauchbares Syntax-Highlighting für den C# Makro-Code.
  • Funktionale Blöcke können “gefaltet” werden:
    image

    image
  • Es gibt (endlich) eine gut funktionierende Zwischenablage
  • Man kann das Makro nun auch ausdrucken (auch mit Druckvorschau)
  • Und schließlich werden Fehlermeldung vom Compiler nun besser markiert.
    image

Insgesamt ist eigentlich alles nun deutlich aufgeräumter als zuvor: Das etwas merkwürdige Config-File für den Editor und den Compiler wird nicht länger benötigt – und bei der Gelegenheit haben wir auch die beiden mitgelieferten Beispielmakros an den neuesten Programmstand angepasst und wieder lauffähig gemacht.

Insgesamt sicher keine Aufwertung für viele Anwender – aber für alle, die diese Funktionalität verwenden, ganz sicher eine dramatische Verbesserung.

Neues Update verfügbar

Ab sofort ist eine neue Version der Baustatik im Download-Bereich verfügbar. Kunden mit aktiviertem automatischen Updates erhalten dieses Update ohne eigenes Zutun. Wer die automatischen Updates deaktiviert hat, oder aber unseren Server für automatische Updates aus anderen Gründen nicht erreichen kann (ausgehende Firewalls…) kann das Update ganz normal über den Download-Bereich abrufen.

Das Update enthält nur zwei kleine Korrekturen. Eine für die Winkelstützmauer und eine weitere für die Darstellung von Streckeneinwirkungen auf Stabzügen im Faltwerk und den Rahmen. Weitere Veränderungen am Programm gibt es nicht.

Alles was Sie über Windows 10 wissen müssen

Microsoft hat vor einigen Tagen die neue Version von Windows eingeführt: Windows 10. Um kurz die Übersicht zu behalten: Hier die letzten Windows-Versionen in der Reihenfolge des Auftretens:

  • Windows XP
  • Windows Vista
  • Windows 7
  • Windows 8
  • Windows 8.1
  • Windows 10

Die meisten unserer Kunden verwenden Windows 7, ein anderer Teil Windows 8/8.1 und nur noch eine verschwindend kleine Menge an Rechnern wird noch mit XP oder Vista betrieben. Und jetzt also Windows 10.

image

Was kostet das Update:

Das Update ist für Nutzer alter Windows-Versionen kostenlos, solange man sich seine Kopie innerhalb der nächsten 12 Monate besorgt. Danach wird die Sache kostenpflichtig.

Was für Hardware braucht man:

Wenn man bisher mit Windows Vista/7/8 gearbeitet hat, reicht die vorhandene Hardware auch für Windows 10 aus.

Was ändert sich in der Benutzung:

Das kommt drauf an, mit was man vorher gearbeitet hat:

  • Windows XP: Die Umstellung ist durchaus größer. Es gibt keinen “Start”-Button mehr, aber statt dessen an gleicher Stelle einen anderen Button, der das Start-Menü öffnet, Darin befinden sich neben ein paar anderen Dingen weiterhin die Zugangsmöglichkeiten zu den installierten Programmen.
  • Windows 7: Die Umstellung ist minimal: Das Start-Menü ist nun einfacher per Drag&Drop konfigurierbar und kann auch Elemente unterschiedlicher Größe enthalten – und die können auch animierte Inhalte haben, also zum Beispiel aktuelle Nachrichten mit Schlagzeilen und Bildern anzeigen.Der Desktop funktioniert im Prinzip wie gehabt – wenn auch viele Detailänderungen und kleinere Neuerungen zu finden sind. So gibt es zum Beispiel generell die Möglichkeit der Sprachsteuerung, man kann sich auf andere Arten am Rechner anmelden etc. etc. – im wesentlichen kann man aber auch eigentlich so weiter arbeiten, wie bisher. Nur eben mit einem moderneren System.
  • Windows 8/8.1: Windows 10 hat sich vom “Kachel” zwar nicht verabschiedet, verpackt die Sache aber in 2 Modi: Befindet man sich vor einem Tablett, gibts den “Tablett” Modus, der so aussieht, wie der Startbildschirm von 8. Ist man auf einem Desktop, sieht die Sache sehr ähnlich aus wie Windows 7 – es gibt also wieder einen normalen Desktop mit Start-Menü und Taskbar: Insbesondere für Desktop-Benutzer entfällt eine ganze Menge Quälerei (Für Tablett-Benutzer war 8.1 eigentlich recht ordentlich).. Dazu gehört zum Beispiel die Tatsache das einige Anwendungen wie das Mail-Programm oder der Kalender nicht mehr zwingen Bildschirmfüllen ausgeführt werden müssen: Man kann die einfach in einem Fenster am Desktop verwenden.

Soll ich umsteigen?

Wenn Sie immer noch XP verwenden: Auf jeden Fall, und auch aus anderen Gründen. Und kaufen Sie sich bei der Gelegenheit auch mal einen neuen Rechner Smiley

Wenn Sie Vista verwenden: Dito. Aber ohne neuen Rechner…

Wenn Sie 7 verwenden: Es gibt zwar schöne neue Dinge im 10er – aber wenn Sie Windows im wesentlichen für den Start von Baustatik, Outlook und ein paar anderen Programmen verwenden und sich nicht für die automatische Synchronisation von Einstellungen über mehrere Rechner hinweg oder Cloud-Dienste wie OneDrive interessieren: Eigentlich nicht – außer, das die Umstellung gering ist und Sie zur Zeit ein neues modernes System, das länger als das 7er gewartet wird völlig kostenlos bekommen würden…

Wenn Sie 8/8.1 verwenden: Wenn Sie 8/8.1 auf einem Tablett verwenden: Da gibt es nicht viele Gründe, außer, das Sie eine modernes System mit längerer Lebenszeit kostenlos bekommen. (Und viele, viele, viele “neue” Details dazu.). Wenn sie 8/8.1 auf einem Desktop verwenden: Unbedingt umsteigen. Je schneller, desto besser.

Die Baustatik, das Web und die Firewall

Die Baustatik (und der BaustatikUpdateService) reden auf verschiedene Arten über das Internet mit unseren Servern. Im einfachsten Fall werden dabei einfach nur Versionsnummern übertragen – wenn die Baustatik überprüft, ob ein Update vorliegt. Aufwendiger wird es, wenn man im Programm den Befehl “Dokument versenden” benutzt: In diesem Fall wird tatsächlich eine ganze Datei an uns übermittelt. Dann gibt es noch den Fall, bei dem Fehlermeldungen übertragen werden, und den bei dem ein vorliegendes Update tatsächlich heruntergeladen wird.

In (geschätzt) 95% aller Fälle klappt das auch bei allen Kunden problemlos. Die “Probleme” tauchen nur in Einzelfälle auf und sind eigentlich immer auf Firewall-Einstellungen zurückzuführen. Für solche Fälle hier eine kurze Übersicht, welche Server und Protokolle von der Baustatik eingesetzt werden und gegebenenfalls in der Firewall freigegeben werden müssten.

Folgende unserer Programme kommunizieren über das Internet:

  • Baustatik.exe
  • BaustatikUpdateService.exe
  • XTimeWiseServer.exe
  • AutoUpdate.exe (nur beim Einsatz der alten XFEMily Programme)

Folgende Protokolle verwenden verwendet:

  • http (auf Port 80)
  • https (auf Port 443)

Mit folgenden Servern wird kommuniziert:

  • www.die.de
  • downloads.die.de
  • die.azurewebsites.net
  • services.die.de

Die Liste der Server wird sich allerdings ändern: Mittelfristig werden die Server “www.die.de” und “die.azurewebsites.net” rausfallen, weil alle Dienste im Laufe der Zeit in “services.die.de” zusammengefasst werden.

Infrastruktur in der Cloud

Wir haben einen Teil der Arbeitszeit des letzten Monats dafür verwendet, praktisch die gesamte IT der Geschäftsführung in die Cloud zu verlegen: Alle Datenbankserver, Datenbanken sowie die Vorlagen für Schriftstücke und der Briefverkehr befinden sich nun auf Servern in Microsofts Azure.Natürlich gibt es noch lokale Workstations – aber die Daten mit denen gearbeitet werden liegen nur noch in Form von Sicherheitskopien im Büro vor, die eigentliche Arbeit wird mit Cloud-Servern durchgeführt.

Schon davor hatten wir ja Teile der Infrastruktur in der gleichen Art ausgelagert: Webserver, Webservices und alles was sonst noch an www.die.de (und blogs.die.de ) dranhängt läuft schon seit einiger Zeit in Azure.

Seit ein paar Tagen passiert diese Umstellung auch mit der Infrastruktur für die Entwicklungssysteme. Ein großer Teil unserer Quellcodeverwaltung ist bereits umgezogen (eigentlich alles, außer der eigentlichen Baustatik – da braucht es noch ein wenig weitergehende Vorarbeiten), und seit Ende letzter Woche werden auch die Daten aus allen unseren Testcases (das sind im wesentlichen ca. 6000 mit der Baustatik berechnete Systeme pro Nacht) in Azure SQL aufbewahrt, statt bisher lokal.

Der nächste Schritt ist das auslagern der Build-Servers, der für die Herstellung der tatsächlich ausgelieferten Version der Baustatik zuständig ist: Auch der ist seit heute nicht mehr Teil unserer lokalen Infrastruktur, sondern läuft ebenfalls in einer virtuellen Maschine in Azure.

image

Auf unsere Kunden sollte all das keine Auswirkungen haben – außer, das wir uns mehr auf Entwicklung und Support konzentrieren können, statt unsere IT Infrastruktur zu warten: Das macht ab sofort Microsoft für uns Smiley

Kleines Update veröffentlicht

Wir haben gestern Version 1.133 der Baustatik und Version 1.39 vom Mauerwerk veröffentlicht. Rechner mit eingeschalteten automatischen Update und einer Baustatik-Version > 1.126 sollten das Update im Laufe des Tages automatisch erhalten. Wer die automatischen Updates nicht eingeschaltet hat, kann das Update manuell herunterladen und installieren.

Das Update beseitigt einen kleinen Fehler im Rissnachweis und einen anderen im Mauerwerksprogramm. Andere Veränderungen wurden an den Programmen nicht durchgeführt.

64bit–warum umstellen?

Nur noch etwa 10% der Rechner unserer Kunden sind 32bit-Systeme, alle anderen laufen mit einer 64bit Windows-Variante. In diesem Kontext habe ich mir heute ein paar Telemetriedaten aus Fehlermeldungen angesehen und dabei was interessantes festgestellt: Diese 10% der Rechner produzieren etwa 40% aller bei uns gemeldeten Fehler im Programm – und in nahezu allen Fällen handelt es sich um Fehler, an denen wir nichts ändern können. Und ändern können wir darum nichts, weil diese Fehler fast alle darauf zurückzuführen sind, das dem Programm der Speicher ausgeht.

Manchmal sind es tatsächlich ganz einfach zu große Systeme, also welche, die mit der unter 32bit zur Verfügung stehenden Speichermenge einfach nicht mehr gerechnet werden können. Manchmal laufen neben der Baustatik noch diverse andere Programme, sodass diese auch für eine kleineres System einfach nicht mehr genügend Speicher vom Betriebssystem bekommt. Und in anderen Fällen gehen einfach die Window-Handles aus, obwohl eigentlich noch genug Arbeitsspeicher zur Verfügung stehen würden: Der Wechsel von 32 auf 64bit entfernt deutlich mehr Einschränkungen, als die reine Menge an Arbeitsspeicher.

Wir beantworten natürlich auch die Fehlermeldungen die aus Einschränkungen bei der Verwendung der 32bit Version resultieren – nur ändern können wir nicht wirklich was: Das muss der Anwender selbst tun, und zwar durch den Wechsel zu einer modernen 64bit Version von Windows Smiley . Und das möglichst schnell…

Ein paar hilfreiche Links

Hier ein paar hilfreiche Links, wenn es Problem bei der Installation von Software gibt – ganz allgemein, aber heute aufgekommen, weil ein Kunde ein genau passendes Problem hatte:

Das .NET Framework Repair Tool

FixIT für Probleme bei Installation und Deinstallation

Manuelle Reparatur des Windows-Installer Dienstes

In meinem speziellen Fall lag folgendes vor: Beim installieren der Baustatik funktionierte zwar der Teil, mit dem die vorliegende Installation beseitigt wird, aber der Teil, der die aktuelle Version installieren sollte brach beim Versuch den BaustatikUpdateService zu installieren mit der Meldung ab: “Auf den Windows Installer Dienst konnte nicht zugegriffen werden”.

Die Meldung bedeutet aber nicht unbedingt, das der Windows-Installer ein Problem hat. In meinem Fall war es so, das der Installer seinerseits einen Dienst installieren und starten sollte – den BaustatikUpdateService – aber das nicht gelang. Nun ist der “installieren” Teil davon unaufwendig, es wird einfach nur eine einzelne Datei kopiert. Das “starten” sollte in der Theorie auch einfach sein – dazu wird das Dienstprogramm gestartet und in der Registry als Dienst eingetragen.

Und genau dieser Schritt ging nicht. Nun ist es so, das der Start des Programms eigentlich nur aus 2 Gründen nicht klappen kann: Entweder, das Binary an sich ist kaputt – was im vorliegenden Fall unwahrscheinlich war – oder eine Abhängigkeit davon ist defekt. Die Abhängigkeit ist in diesem Fall der Service-Installer des .NET Frameworks, und genau daran lag es dann auch: Das NetFxRepairTool reparierte die Registrierung dafür, und danach klappte die Installation dann auch.

Automatische Updates klappen ganz gut

image

Wir haben ja mit Version 127 einen Mechanismus für “echte” automatische Updates in die Baustatik eingearbeitet: In den meisten Fällen können wir die Updates so vollautomatisch installieren – also ganz ohne zutun des Anwenders. (In einigen Fällen – immer dann, wenn sich das bei uns zugrunde liegende Toolset verändert hat – können wir das Update zumindest automatisiert herunterladen und den Start der Installation anbieten.)

Das sieht man ganz gut an der Graphik, die den Verteilungsverlauf der letzten 7 Tage darstellt. Interessant sind dabei vor allem Versionen 130, 131 und 132. Version 130 war die vom Monat Juli, die dann letzten Mittwoch durch 131 für den August ersetzt wurde: Bereits am Donnerstag waren praktisch alle “alten” Versionen umgestellt. Gestern (also Montag) haben wir dann Version 132 veröffentlicht, die ein paar kleinere Probleme in der 131 beseitigte: Wir man sieht ist diese Version schon heute ebenfalls bei fast allen angekommen – spätestens morgen wird es quasi keinen Anwender mit der 131 mehr geben.

Das schafft uns mittelfristig einen ganz guten Spielraum für kleinere “Zwischenversionen”, mit denen wir kleinere Probleme beheben können: Bisher musste dazu eine “echte” Zwischenversion angefertigt und quasi manuell verteilt werden – jetzt werden solche kleineren Probleme automatisch behoben, ganz ohne das die Mehrheit der Kunden die Probleme überhaupt bemerkt: Der Fehler ist also schon weg, bevor die Mehrzahl der Kunden zum ersten Mal die Funktion mit dem Fehler aufrufen kann… Smiley

Neue Version veröffentlicht

Wir haben gerade eine neue Version der Baustatik veröffentlicht, die das zuvor angesprochene Problem mit dem “neuen” KLED – Werten beseitigt. Wenn Sie auf dieses Problem gestoßen sind und sofort mit der korrigierten Version weiterarbeiten möchten, dann können Sie diese ganz normal im Download-Bereich herunterladen und installieren.

Sofern sich das Problem bei Ihnen nicht bemerkbar gemacht hat, können Sie einfach normal weiterarbeiten: Die Baustatik wird sich automatisch aktualisieren und sollte spätestens morgen früh in der aktuellen Version mit beseitigtem Problem laufen.