Kategorie: Elektronische Datenverarbeitung
Unterkategorien und Themen rund um die elektronische Datenverarbeitung und Informationstechnologie
Top 500 Supercomputer: Linux
Mit Open Source siegt die Vernunft
Gerald Pfeifer sieht die Sache ganz pragmatisch: „Die Kunden brauchen Software, die funktioniert“, sagt der Österreicher, der bei der Nürnberger Software-Firma Suse die Bereiche Produkte und Services leitet. „Wenn’s nicht tut oder zu langsam arbeitet, ist es keine Option.“ Es, das ist Software, die man auch in Fachkreisen noch vor einigen Jahren vielfach belächelt hat. Oder, wie der Windows-Hersteller Microsoft, mit Krebs verglichen und bekämpft hat, wo es nur ging: Open-Source-Software, auch freie Software genannt.
Software also, deren Quellcode jedermann zur Verfügung steht, die jeder verändern darf. Man übertreibt kaum, wenn man feststellt: Diese Software regiert inzwischen die Welt. Und ja, sie ist eine Option, eine Option, die immer häufiger gezogen wird.
„Open-Source-Software ist in vielen Bereichen zum Standard geworden“, sagt Peter Ganten, Chef der Bremer Open-Source-Softwarefirma Univention und Chef der Open Source Business Alliance. „Google, Facebook, Amazon – sie alle basieren auf Open-Source-Software“, sagt Ganten, „auch Android“, also Googles Betriebssystem, das die weitaus meisten Smartphones antreibt sowie viele andere Geräte.
Quelle: Die Süddeutsche Zeitung
Weichzielscheibenkleister
Check SELinux…
…via:
- /etc/selinux/config (symlinked to /etc/sysconfig/selinux)
- /usr/sbin/sestatus
- /usr/sbin/getenforce
Nicht vergessen:
- ls -dZ /path/to/directory zeigt SELinux Label des Ordners
- ps axZ | grep ftpd zur Kontrolle der Labels des Prozesses
- sudo netstat -tnlpZ | grep ftp zur Kontrolle der Labels des/der Ports
(see: semanage port -l | grep ftp) - firewall-cmd –zone=public –list-ports bzw. firewall-cmd –zone=public –list-services
CentOS, Docker und SELinux
Mit verlangsamter Geschwindigkeit gekuckt: Docker and SELinux by Daniel Walsh from Red Hat führte mich auf folgende, wichtige Seiten zu docker im Rahmen eines professionellen Linux-Systems:
- Secure Your Containers with this One Weird Trick
- Container Tidbits: Adding Capabilities to a Container
- What capabilities do I really need in my container?
und weiterführend Docker and SELinux.
Dabei kaue ich schon die ganze Zeit an meinem System, per ftp (tls & mod_auth_file.c – enforced) upgeloadete Files über https an ein Java-Modul übergeben zu können. Teile davon finden sich z.B. unter Mesqualito/docker-proftpd (GitHub). Davor hatte ich verschiedene proftpd-docker-images anderer Administratoren durchprobiert und blieb jedesmal irgendwo stecken…
Und bei aller gewünschten Funktionalität immer beachten: http://stopdisablingselinux.com!
Hier findet sich auch eine gute Erklärung zur „Discretionary Access Control (DAC)“ mit den gewohnten Lese-/Schreib-/Ausführungsrechten für Prozesse und Benutzer und der durch den Kernel kontrollierten „Mandatory Access Control (MAC)“, bei der anhand „policies“ festgesetzt wird, welcher Typ von Prozess (oder Benutzer) welche Berechtigungen in Bezug auf welches Objekt hat. SELinux‘ MAC kann auch Rechte ausschließen, die Linux‘ DAC scheinbar freigegeben hat (z.B. rwxrwxrwx – /home/user_home bleibt für user2 und ggf. auch für root dennoch gesperrt).
In diesem Kontext muss ebenso auf die „Capabilities“ (=> pscap) geachtet werden, die docker (aka Linux-Container lxc) heranzieht.
Wichtig ebenso: SELinux type-enforcement (“ a process running with the label ftpd_t can have read access to a file labeled ftpd_config_t…“) – siehe auch: SELinux check…
TypeScript und der Java-Programmierer…
…quote of the day:
It’s a peculiarity of the JavaScript language that you can access variable before defining them. TypeScript inherits this treat, and there doesn’t seem to be anything to do about it.
(von: beyoundjava.net)
Arbeiten mit JavaScript
Der MEAN-Stack:
MongoDB, Express, Angular 2 – TypeScript / ECMA-Script und die Wurzel aller Freude: node.js!
@angular/core:
in jeder Application; Kern für Komponenten, Direktiven, Dependency Injection und Lebenszyklen der Komponenten
@angular/common:
häufig verwendete Direktiven, Pipes und Services
@angular/platform-browser:
Browser- und DOM-relevante Bestandteile, v.a. zum Rendern neuer Elemente
@angular/platform-browser-dynamic:
triggert die Aktualisierung der View, verfügt über Methoden des Bootstrappings zur Initialisierung der Anwendung
@angular/http:
Modul für http-Aufrufe, verfügt über alle notwendigen Elemente, um dynamisch Inhalte zu laden oder Informationen ans Backend zu senden (XHR-Aufrufe, Client-Server-Kommunikation)
@angular/router:
Elemente für komponentenbasiertes Routing
@angular/compiler:
kombiniert Logik mit Vorlagen zu Views. Compiler wird automatisch über @angular/platform-browser-dynamic angestoßen
Links:
Angular API Liste
Quellen:
angular.io, video2brain
HTML 5.1 / HTML Living Standard / HTML5
Wir gedenken W3C, WHATWG & Apple:
Compatibility
(Rücksicht auf das, was bereits besteht)
– Support Existing Content
– Degrade Gracefully
– Do not Reinvent the Wheel
– Pave the Cowpaths
– Evolution Not Revolution
Utility
(Nützliche Dinge effektiv regeln)
– Solve Real Problems
– Priority of Constituencies
(users over authors over implementors over specifiers over theoretical purity)
– Secure By Design
– Separation of Concerns
– DOM Consistency
Quickers
„It’s a question of degree. Where you draw the line is almost always a personal, aesthetic choice.“
„One can also choose the degree to which they want to throw out good practices that prevent them from repeating others‘ mistakes.“
Wie wahr…
(Quelle: Y-Hacker News)