http-upload in Prosody aktivieren

Um nun auch Bilder in den XMPP-Chaträumen versenden zu können, habe ich den http-upload in Prosody aktiviert. Dazu wurde zuerst ein A-Record für die Subdomain upload.intux.de angelegt. Danach musste mein Let’s Encrypt Zertifikat, welches für intux.de und www.intux.de gültig war, noch erweitert werden.

# /opt/letsencrypt/letsencrypt-auto certonly --renew-by-default --rsa-key-size 4096 -d intux.de -d www.intux.de -d upload.intux.de

Im Anschluss wurden die Zertifikate noch in das entsprechende Verzeichnis /etc/prosody/certs kopiert.

# cp /etc/letsencrypt/live/intux.de/fullchain.pem /etc/prosody/certs
# cp /etc/letsencrypt/live/intux.de/privkey.pem /etc/prosody/certs
# chown root:prosody /etc/prosody/certs -R

Ich habe die Config von Prosody geöffnet

nano /etc/prosody/prosody.cfg.lua

und um

modules_enabled = {

.....
"http_upload";

.....
}

und 

Component "upload.intux.de" "http_upload"

erweitert. Danach wurde Prosody neu gestartet und http-upload aktiviert.

# /etc/init.d/prosody restart

Tipp

In Gajim muss das Plugin HttpUpload nachinstalliert werden.

exFAT

Neulich hatte ich einen USB-Stick bekommen, welcher auf einem Windows-System in exFAT formatiert war. Um auf die Daten zugreifen zu können, war es nötig folgende Erweiterungen zu installieren.

# apt-get install exfat-fuse exfat-utils

exFAT ist ein Microsoft-Dateisystem, welches es ermöglicht Dateien größer 4GB auf einen Flash-Speicher zu schreiben.

TUXEDO InfinityBook Pro 13 – Teil 1

Seit ein paar Tagen habe ich ein InfinityBook Pro 13 der Firma TUXEDO im Einsatz, welches ich schon auf der diesjährigen CeBIT bewundern konnte. Im Gespräch am TUXEDO-Stand bekundete ich bereits mein Interesse, mir das Pro 13 einmal näher ansehen zu dürfen. 

Vorab möchte ich mich bei TUXEDO bedanken, die es mir ermöglichen, das Notebook ausgiebig zu testen.

Über dieses Gerät werde ich nun in den nächsten Monaten berichten. Sinn des Ganzen ist nicht, einfach nur einen Testbericht zu schreiben, sondern meinen Lesern zu zeigen, wie sich das Gerät im Alltag eines Tech-Blogger schlägt. Dabei werden verschiedene Betriebssysteme auf dem Gerät getestet und erläutert auf welche Probleme man stoßen kann. Nun aber zu meinem ersten Eindruck:

Die Firma TUXEDO hat sich zum Ziel gesetzt dem Linux-User hochwertige Hardware zu liefern. Vor genau einem Jahr hatte ich schon einmal ein Gerät aus Königsbrunn. Dazu entstand der Artikel „TUXEDO InfinityBook 13 v2„.

Ein Jahr später steht nun das nagelneue InfinityBook Pro 13 auf meinem Schreibtisch und ich bin vom ersten Eindruck begeistert. Das Gerät macht einen sehr hochwertigen Eindruck. Das Aluminiumgehäuse, welches das gesamte Notebook umschließt, wirkt robust und edel. Die Verarbeitung ist recht gut, könnte aber im Detail noch einen Tick besser sein. Die Spaltmaße wirken bei normalem Licht nahezu perfekt, doch offenbaren sich hier, bei etwas mehr Dunkelheit, kleine Schwächen. Diese fallen tatsächlich aber nur bei näherer Betrachtung ins Auge. Das Gerät hat folgende Austattung:

  • Arbeitsspeicher (DDR4 SO-DIMM): 16 GB (1x 16GB) 2400Mhz Crucial
  • Display / Bildschirm: Full-HD (1920 x 1080) IPS-Panel matt
  • Festplatte (SATAIII, 6Gb/s): ohne Festplatte
  • Festplatte M.2 SSD: 250 GB Samsung 960 EVO (PCIe/NVMe)
  • Prozessor (Intel Kaby Lake-U): Intel Core i7-7500U (2x 2.7-3.5GHz Dual-Core, 4 Threads, 4MB Cache, 7,5-15W TDP)
  • Tastatur / Keyboard: DEUTSCH (DE-DE) beleuchtet
  • WLAN & Bluetooth: Intel Dual AC 8265 & Bluetooth (M.2 2230) (Empfehlung)
  • Betriebssystem Linux: Ubuntu 16.04 LTS 64Bit (Empfehlung)
  • Betriebssystem Windows: Windows 10 Home 64Bit
  • UMTS / LTE Modul: ohne UMTS / LTE Modul

Die verbaute Hardware befindet sich momentan im Highend-Bereich. Das Gerät wiegt 1,3kg und ist nur 18mm dick. Positiv fällt auf, dass das InfinityBook Pro 13 über eine LAN-Schnittstelle verfügt. Diese war leider beim Vorgänger nicht vorhanden. Ein Debian zu installieren war somit umständlich. Das sollte beim InfinityBook Pro 13 nun kein Problem mehr darstellen. Das Gerät verfügt weiterhin über ausreichend USB-Schnittstellen (2 x USB 3.1 Type A und 1 x USB Typ-C mit Thunderbolt 3), einen Card-Reader und auf Wunsch sogar über ein UMTS/LTE-Modul. Das macht dieses Notebook gerade auf Reisen interessant. Ein HDMI-Anschluss sowie ein MiniDisplay Port sind ebenfalls verbaut. Das matte 13 Zoll IPS-Panel Display löst in FullHD (1920 x 1080) auf und ist sehr hell und kontrastreich. Die Funktionstasten lassen sich durch spezielle TUXEDO-Anpassungen in Ubuntu steuern. Dadurch ist es möglich, nicht nur die Helligkeit des Displays sondern auch der Tasten stufenweise zu dimmen. Die Tastaturbeleuchtung kann im Übrigen auch vollständig ausgeschaltet werden. Die verbaute M.2 SSD EVO 960 von Samsung ist blitzschnell. Das vorinstallierte Ubuntu 16.04 LTS startet in 18 Sekunden. Der verbaute 36Wh Lithium-Ionen Akku fällt etwas kleiner als beim getesteten Vorgängermodell aus, ist jedoch sehr gut auf die verbaute Hardware abgestimmt. Nach den TUXEDO-eigenen Tests hält dieser bis zu 12h mit Kernel 4.11rc4. Ich kam leider mit dem Kernel 4.9 nur auf etwas über 10h. Ein besseres Energiemangement des Kernel 4.11 sorgt an dieser Stelle für bessere Werte in der Testumgebung des Herstellers. Da diese Tests aber nicht wirklich etwas mit der Realität zu tun haben, war es dennoch interessant, dass das InfinityBook im normalen Einsatz (abgedunkeltes Display, deaktiviertes Bluetooth und angeschlossene Funkmaus) auf immer hin 5:20 Stunden kam. Das sind deutlich bessere Werte als beim getesteten Vorgängermodell mit 45Wh. Die Steigerung beträgt damit knapp 40%. Besonders witzig bei den Geräten von TUXEDO ist die spezielle Tux-Taste, welche die gewohnte Windows- oder Super-Taste ersetzt. Hier erkennt man sofort welche Zielgruppe mit der Hardware in erster Linie angesprochen werden soll.

TUXEDO InfinityBook Pro 13
Logo auf dem Gehäusedeckel
TUXEDO InfinityBook Pro 13
Anschlüsse rechts
Anschlüsse links
Tux-Taste
Tastatur und Touchpad
Verarbeitungsschwächen am Gehäuse.

Der Intel Core i7-7500U arbeitet flott und geräuschlos mit ca. 46°C im Normalbetrieb. Ubuntu 16.04 LTS kommt gut mit der Grafik zurecht. Ich hatte diesbezüglich während des Einsatzes mit Ubuntu keinerlei Probleme. Beim Gaming via Steam musste als Referenz wieder „Duke Nukem 3D: Megaton Edition“ her halten. Hier stieg die Temperatur auf ca. 90°C an. Der Lüfter war erstmals richtig zu hören. Natürlich muss man sehen, dass es sich hierbei um ein Notebook handelt, welches für den alltäglichen Gebrauch gebaut wurde. Die Stärken liegen hier eindeutig im mobilen Office-Bereich.

Der Grundpreis des InfinityBook Pro liegt bei 1099,00€. Man kann dieses Gerät speziell nach seinen Wünschen anpassen lassen, sodass das Testgerät mit 1411,99€ zu Buche schlägt.

Ubuntu 16.04
Ubuntu Dash
Terminal (Kernelversion 4.9)
Ubuntu Dateien
Firefox

Fazit

Das InfinityBook Pro 13 ist ein gut verarbeitetes Notebook im ansprechenden Aluminiumgehäuse. Die Hardware ist auf dem neuesten Stand der Technik. Wahlweise kann das Gerät mit den verschiedensten Linux-Distributionen oder gegen Aufpreis mit Windows sowie als Dualboot mit Linux und Windows vom Werk aus bestellt werden. Das InfinityBook richtet sich an Entwickler und Leute die viel unterwegs sind und auf ein leistungsfähiges Notebook auf Reisen nicht verzichten möchten. Hierfür ist das 13 Zoll Display völlig ausreichend. Ein optionales UMTS/LTE-Modul sorgt für genügend Mobilität.

Kleine Mängel muss ich dennoch aufführen. So gibt es beim Gehäuse, in Höhe der Webcam, Verarbeitungsschwächen. Ein weiterer Kritikpunkt ist die in der Branche übliche und in die Irre führende Bewertung der Akkulaufzeit. Ein anderes Problem stellt das Wlan-Modul des Pro 13 dar, welches auch bei diesem Gerät nicht mit freien Treibern arbeitet.

Trotz einiger Kritik würde ich das InfinityBook Pro 13 dennoch zum Kauf empfehlen. Der Kunde erhält aus meiner Sicht ein gut verarbeitetes und leistungsstarkes Gerät zu einem gerechtfertigten Preis.

Vorschau

Im nächsten Artikel werde ich berichten, wie sich das TUXEDO InfinityBook Pro 13 mit Windows 10 schlägt.

Unerwünschte Anmeldungen in Prosody

Seit einiger Zeit kommt es auf meinem XMPP-Server immer wieder verstärkt zu Registrierungen von Spam-Accounts. Die neuen User sehen dann in etwa so aus:

l0v382l0stdust348@domain.tld

Das Schlimme dabei ist, dass solche Anmeldungen fast im Minutentakt erfolgen und sich so plötzlich dutzende neue unerwünschte Accounts in die Datenbank eintragen. Als erste Reaktion sperrte ich früher i.d.R. für eine gewisse Zeit die öffentliche Anmeldung. Da die Angriffe jedoch meist von ein und derselben IP kommen, kann man diese mit folgendem Eintrag in der /etc/prosody/prosody.cfg.lua recht erfolgreich abwehren.

Dazu setzt man dies entsprechende IP auf die Blacklist zur Registrierung. Hier ein Beispiel:

allow_registration = true
min_seconds_between_registrations = 300
registration_blacklist = { "83.218.198.86" }

Dabei werden Registrierungen zwar erlaubt, jedoch nur alle 300 Sekunden. Die IP von der die Spam-Registrierungen ausging wird gesperrt.

Prosody kann auch nerven

Es hat einige Zeit gedauert bis ich den HTTP Server unter Prosody vernünftig einbinden konnte. Eigentlich wollte ich ja nur das Webinterface mod_admin_web nutzen. Egal wie ich es anstellte, ich bekam keinen Zugang, trotz Befolgung der Installationshinweise. 

Prosody Webadmin

Das Problem kam eigentlich nur zustande, da ich die Config aus meinem Artikel zur Installation des XMPP-Servers auf Uberspace übernommen hatte. Hierbei wurde der VirtualHost vor den SSL-Pfaden gesetzt. Dies macht aber den Zugang zum HTTP-Server unmöglich. 

Nachdem ich den VirtualHost, wie in meiner aktuellen Config nach den SSL-Pfaden eingetragen hatte, konnte ich endlich auch mein Webadmin wie gewünscht erreichen.

Auszug aus meiner alten Konfiguration bei Uberspace

Hier nun meine aktuelle prosody.cfg.lua:

pidfile = "/var/run/prosody/prosody.pid"

storage = "sql"
 
sql = {
    driver = "MySQL";
    database = "prosody";
    host = "localhost";
    username = "bn";
    password = "pw";
}

plugin_paths = { "/usr/lib/prosody/prosody-modules/" }

admins = {"admin@domain.tld" }
modules_enabled = {
	"roster";
	"saslauth";
 	"tls";
	"dialback";
	"disco";
	"private";
	"vcard";
	"privacy";
	"version";
	"uptime";
	"time";
	"ping";
	"posix";
	"pep";
	"register";
	"admin_adhoc";
	"motd";
	"welcome";
	"proxy65";
	"watchregistrations";
	"register_web";
	"admin_web";
	"http_upload";
}

log = {
 debug = "/var/log/prosody/prosody.log";
 error = "/var/log/prosody/prosody.err";
}

c2s_require_encryption = true  
s2s_require_encryption = true
s2s_secure_auth = true
s2s_secure_domains = { "trashserver.net", "jabber.de", "c0by.de", "jabber.org", "xmpp.org", "xmpp.maltris.org" }
s2s_insecure_domains = {}

proxy65_ports = { 55555 }

authentication = "internal_hashed"

allow_registration = true
min_seconds_between_registrations = 300
registration_blacklist = { "83.218.198.86" }

ssl = {
        key = "/etc/prosody/certs/privkey.pem";
        certificate = "/etc/prosody/certs/fullchain.pem";
       
        dhparam = "/etc/prosody/certs/dh-4096.pem";
 
        ciphers = "EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:EDH+aRSA:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4:!SEED:!AES128:!CAMELLIA128";
 
        options = { "no_sslv2", "no_sslv3", "no_ticket", "no_compression", "cipher_server_preference", "single_dh_use", "single_ecdh_use" }

}

VirtualHost "domain.tld"

register_web_template = "/etc/prosody/register-templates/Prosody-Web-Registration-Theme"

Component "proxy.domain.tld" "proxy65"

	proxy65_acl = { "domain.tld" }

Component "conference.domain.tld" "muc"
        name = "Prosody Chatrooms"
        restrict_room_creation = false

Component "upload.domain.tld" "http_upload"

hality.org

Startseite von hality.org

Heute möchte ich ein wenig Werbung für die regionale Open Source Community von Halle (Saale) machen. Ende Januar 2017 hatten Andreas und ich die Idee eine Online-Community für Gleichgesinnte zu gründen. Im Vordergrund sollte der Gedankenaustausch rund um freie und quelloffene Software stehen.

Hierzu haben wir am 10.02.2017 den Grundstein gelegt. Es wurde damit begonnen ein kleines soziales Netzwerk unter hality.org aufzubauen. Daran teilnehmen kann natürlich jeder! Hierbei spielt keine Rolle ob ihr Hallenser seid oder aus einer anderen Ecke der Republik kommt.

Um die Community etwas lebhafter zu gestalten, möchten wir natürlich auch Treffen organisieren. Dabei soll freie Software im Vordergrund stehen. Installationshilfen sowie Workshops sind geplant.

Unter XMPP und IRC stehen entsprechende Chaträume bereit.

XMPP: hality@conference.intux.de
IRC: #intux

Viel Spaß!

Acht Jahre Linux

Vor acht Jahren bin ich auf Linux umgestiegen. Man wie die Zeit vergeht. Im April 2009 bin ich das erste Mal mit Ubuntu in Kontakt gekommen. Mein Kollege Ecki zeigte mir das System auf seinem Notebook. Besonders genial fand ich, dass man Ubuntu vor der Installation als Live-System ausgiebig testen konnte, was ich tat. 

Unity-Desktop (Ubuntu 16.04 LTS)
Unitity-Desktop (Ubuntu 17.04 Beta)

Es folgte der harte Schnitt. Ich verbannte mein Windows vollständig und installierte mir das freie OS aus dem Hause Canonical in Version 9.04. Besonders innovativ fand ich die Einführung der Cloud Ubuntu One. GNOME 2 war zu diesem Zeitpunkt der Standard-Desktop. Am Anfang nahm ich jede halbjährliche neue Version mit. Diese brachten mal kleine und mal größere Neuerungen. Den kommerziellen Ansatz von Ubuntu nahm ich erst so richtig mit der Einführung des Music-Stors wahr. Ich fragte mich, warum man sich dort den weitaus größeren und erfahreneren Mitbewerbern stellen will. Mit Ubuntu 11.04 wurde dann Unity als Desktop-Umgebung eingeführt, was für mich einem Schock gleich kam. Ich versuchte es hin und wieder, aber ich konnte mich mit Unity einfach nicht anfreunden. Spätestens hier war mir klar, dass man etwas entwickeln will, was irgendwie an der Linux-Community vorbei gehen sollte. Ich blieb zwar bei Ubuntu, jedoch setzte ich von nun an auf GNOME 3. Eine weitere komische Entwicklung war festzustellen. Canonical setzte vor dem Download einen gewünschten Preis für das OS in das Download-Formular. Das konnte bzw. kann man zwar umgehen, jedoch fühlte sich das schon irgendwie komisch an. Es zeichnete sich immer mehr ab, dass Canonical den Privatanwender als Geldeinnahmequelle im Visier hat. 

Die Amazon-Lense hielt Einzug auf dem Desktop und Canonical entwickelte Ubuntu Phone, ein OS für ein Smartphone. Fraglich war, warum Canonical sich nicht auf das Nötigste konzentrierte, ein perfektes Betriebssystem für Desktop und Server. Canonical setzte noch einen drauf mit der Crowdfunding-Kampagne zu dem Super-Smartphone „Edge“. Das „Edge“ kam nie heraus und Canonical erlitt eine Pleite. Den großen Marktteilnehmern war man mit einem unfertigen mobilen Betriebssystem nicht gewachsen. Die einzige wirkliche Innovation lag in der Hardware. Das „Edge“ sollte, wie wir wissen, mit Saphir-Glas erscheinen. Inzwischen wurden auch Ubuntu One und der Music-Store eingestellt. 

Mir gefiel diese Entwicklung nicht wirklich und so liebäugelte ich mehr und mehr mit Debian. Ankündigungen von Mir und Snappy trugen dazu einiges bei. Irgendwann wechselte ich tatsächlich zu Debian und bin mit der Stabilität und Kontinuität dieses wirklich freien Betriebssystems voll zufrieden.

Nun bin ich 8 Jahre Linux-Nutzer und ich bereue keinen Tag. Ubuntu hatte zur Zeit meines Umstiegs großes Potential, jedoch hat man dieses aus meiner Sicht nicht nutzen können, weil man immer wieder blind irgendwelche Entwicklungen voran trieb, die nie wirklich eine Chance am Markt hatten.

Ubuntu kommt nun „back to the roots“ und wird hoffentlich wieder benutzerfreundlicher. Zwar ist von der einstigen Erfolgsgeschichte nicht mehr viel übrig, aber vielleicht bekommt hier Canonical mit Ubuntu nochmal die Kurve.

Wetter im Terminal

Heute möchte ich ein kleines Tool vorstellen, welches das Wetter im Terminal darstellt. Voraussetzung hierfür ist die Installation von curl.

# apt-install curl

Mit folgendem Befehl können z.B. die aktuellen Wetterdaten von Halle (Saale) abgerufen werden.

curl -H "Accept-Language: de" wttr.in/halle

Bequemer geht das Ganze aber im Browser http://wttr.in/halle.

Viel Spaß!

Linux-Server – Das umfassende Handbuch

 

Linux-Server – Das umfassende Handbuch“ von Dirk Deimeke, Stefan Kania, Daniel van Soest, Peer Heinlein ist 2016 in der 4., aktualisierten Auflage im Rheinwerk Verlag erschienen. Das Buch umfasst 1151 Seiten. Als Zielgruppe dieses Werkes gilt der fortgeschrittene Administrator. Was unter dem Beruf Administrator zu verstehen ist und welche Aufgaben ihn begleiten, werden im ersten Kapitel ausgiebig beleuchtet.

Die weiteren Teile des Buches geben einen Einblick in die Grundlagen bis hin zur Sicherheit eines Linux-Servers. Die Schwerpunkte liegen in der 4. Auflage bei den Systemen Ubuntu, Debian, CentOS und openSUSE leap. Dabei wurde in dieser aktualisierten Auflage des Handbuches SUSE Linux Enterprise Server entfernt und erstmals durch openSUSE ersetzt. Auch das mit längerer Laufzeit unterstützte CentOS nahmen die Autoren des Buches mit auf, um so die Kompatibilität zu Red Hat Enterprise Linux zu wahren.

Im ersten Teil werden die Grundlagen eines Servers erklärt, u.a. der Umgang mit Festplatten und Devices, welche Dateisysteme i.d.R. zum Einsatz kommen und wie man mit Berechtigungen umgeht bzw. diese setzt. Nach dem Teil Aufgaben, wo sich das Buch mit der Paketverwaltung sowie der Sicherung des Servers und des Einspielens von Sicherungen beschäftigt, werden im Teil Dienste die verschiedenen Webserver Apache, Lighttpd und Nginx thematisiert. Weiterhin können Grundlagen zur Dateiübertragung über FTP-Server vermittelt werden. Dabei spielt die Sicherheit via FTP über SSL eine zentrale Rolle. Auch erfährt der Leser wie man einen Mailserver mit entsprechendem Spam- und Virenschutz aufbaut, diesen wartet und administriert. Erstmals in der 4. Auflage widmet sich das Handbuch Samba 4. Das Thema Druckserver bildet dann den Abschluss dieses speziellen Praxisteils. Die folgenden Teile Infrastruktur, Kommunikation, Automatisierung und Sicherheit, Verschlüsselung und Zertifikate zeigen nicht nur wie ein Hochverfügbarkeits-Cluster erstellt und betrieben wird, sondern helfen dabei die unterschiedlichen Linux-Server zu kontrollieren, konfigurieren und mit allen nötigen Sicherheitsmaßnahmen auszustatten.

Dieses umfassende Handbuch ist in sieben Teile mit 28 Kapiteln gegliedert.

  • Der Administrator

TEIL I Grundlagen

  • Bootvorgang
  • Festplatten und andere Devices
  • Dateisysteme
  • Berechtigungen

TEIL II Aufgaben

  • Paketmanagement
  • Backup und Recovery

TEIL III Dienste

  • Webserver
  • FTP-Server
  • Mailserver
  • Datenbank
  • Syslog
  • Proxy-Server
  • Kerberos
  • Samba 4
  • NFS
  • LDAP
  • Druckserver

TEIL IV Infrastruktur

  • Hochverfügbarkeit
  • Virtualisierung

TEIL V Kommunikation

  • Netzwerk
  • OpenSSH
  • Administrationstools
  • Versionskontrolle

TEIL VI Automatisierung

  • Scripting
  • Monitoring – wissen, was läuft

TEIL VII Sicherheit, Verschlüsselung und Zertifikate

  • Sicherheit
  • Verschlüsselung und Zertifikate

Leseproben und Downloads

Fazit

Wie schon eingangs erwähnt, richtet sich das Buch in erster Linie an den erfahrenen Administrator. Trotzdem ist dieses Nachschlagewerk auch jenen ans Herz gelegt, die in die Materie Server einsteigen wollen. Die umfangreichen Erfahrungen unserer vier Autoren Dirk Deimeke, Stefan Kania, Daniel van Soest, Peer Heinlein zum Standardwerk „Linux-Server – Das umfassende Handbuch“ helfen nicht nur Profis sondern auch Neueinsteigern Linux-Server einzurichten und zu administrieren.