Fritz!Box: Prüfen, ob TR-069 aktiv ist und ob/wann der letzte Kontakt zum ACS1 Server war

Durch das TR-069 Protokoll könen Provider (und ggf. andere) z.Bsp. auf Router (Fritz!Box = Router) zugreifen. Dadurch können Einstellungen, Firmware, etc. ausgelesen und manipuliert werden. Von diesen Zugriffen und Änderungen bekommen Sie als verantwortlicher Eigentümer der Fritz!Box (ein AVM Produkt) nichts mit.

Für weitere Details empfehlen wir Ihnen die entsprechende Wikipedia Seite:
https://de.wikipedia.org/wiki/TR-069

Bis zur Version 6.30 der FritzBox Firmware gab es die Möglichkeit, per "telnet" auf die FritzBox zuzugreifen und das TR-069 Protokoll (und andere Einstellungen) selbst anzupassen. Ab Version 6.30 ist das (leider) nicht mehr möglich. Ein Auszug aus der Info-Datei von AVM:

[...]
Neues in FRITZ!OS 6.30
[...]
Hinweis - Zugang zur FRITZ!Box per Telnet wird nicht mehr unterstützt
[...]

Angeblich soll die TR-069 Funktionalität in der FritzBox Oberfläche abgeschaltet werden können.

Gehen Sie dafür auf Ihre FritzBox (im Browser in die Adresszeile http://fritz.box eingeben) und aktivieren Sie die "erweiterte Ansicht" (unten links auf "Ansicht:" klicken, bis "Ansicht: Erweitert" angezeigt wird).

Führen Sie folgende Schritte aus:

  1. Klicken Sie im linken Menü auf "Internet"
  2. Dann den Unterpunkt "Zugangsdaten" anklicken
  3. Im Hauptfenster den Bereich "Anbieter-Dienste" öffnen
  4. Deaktivieren Sie alle hier angezeigten Optionen (derzeit drei Stück)
  5. Speichern Sie die Einstellungen per Klick auf "Übernehmen"

Nachdem diese Option (lt. AVM Support) auf diese Weise deaktiviert sein soll, können Sie sich Ihre komplette FritzBox Konfiguration auf folgende Weise einfach ansehen: Sie erstellen ein Backup der Einstellungen

  1. Klicken Sie im linken Menü auf "System"
  2. Jetzt den Unterpunkt "Sicherung" anklicken
  3. Geben Sie ein Kennwort ein (für diesen Test z.Bsp. einfach "xxx")
  4. Klicken SIe auf "Sichern"
  5. Lästigerweise muss diese Aktion (neuerdings) per Telefon bestätigt werden:
    Folgen Sie also bitte der angezeigten Anleitung zur Eingabe eines PIN per Telefon. Klicken Sie danach auf das dann angezeigte "OK".
  6. Speichern Sie die Datei auf Ihrem Computer

Anmerkung:
Wenn eine sicherheitsrelevante Einstellung wie das TR-069 so "einfach" zu deaktivieren wäre, dann wäre ja alles ok.

Öffnen Sie bitte die gerade gespeicherte Datei. Es ist eine Textdatei, ein einfaches Textprogramm wie "notepad" oder "wordpad" sind vollkommen ausreichend und sind bei Windoes meist automatisch instelliert.

Suchen Sie in der Datei nach der Zeichenkette "tr069discover" (meist per "Strg+F"). Sie werden eine folgende Anzeige finden:

tr069discover_active = yes;
tr069discover_mode = only_pppoe;
tr069discover_without_dhcpoption = no;
tr069discover_forced = yes;
tr069discover_vlan_takeover = no;
tr069discover_vlancfg_list {
        vlanencap = vlanencap_fixed_prio;
        vlanid = 7;
        vlanprio = 0;
}
tr069discover_vlancfg {
        vlanencap = vlanencap_none;
        tagtype = vlantagtype_customer;
        vlanid = 0;
        vlanprio = 0;
        tos = 0;
}

Extrem wichtig ist hier die Einstellung "tr069discover_mode". Diese soll (wenn schon TR-069 aktiviert ist) verhindern, dass sich jemand über das Internet mit Ihrer FritzBox über das Protokoll verbinden kann. Durch diese Einstellung soll der Zugriff auf Anfragen über die aktuelle Einwahl zum Provider beschränkt werden.

Um die Details zur Verbindung zum TR-069 einzusehen, suchen Sie bitte nach dem Text "tr069cfg":

tr069cfg {
        enabled = yes;
        litemode = yes;
        tr181_support = no;
        dhcp43_support = no;
        igd {
                DeviceInfo {
                        ProvisioningCode = "666";
                        FirstUseDate = "2017-01-11 12:51:28";
                }
                managementserver {
                        url = "https://acs1.online.de";
                        username = "$$$$CG5T**entfernt";
                        password = "$$$$CJBE**entfernt";
                        URLAlreadyContacted = yes;
                        LastInformReq = "2017-05-21 17:20:19";
                        LastSuccessfulContact = "2017-05-21 17:20:19";
                        URLbyDHCPIface = "";
                        PeriodicInformEnable = no;
                        PeriodicInformInterval = 0;
                        PeriodicInformTime = "1970-01-01 01:00:00";
                        UpgradesManaged = no;
                        ACSInitiationEnable = no;
                        ACSInitiationPorts = "46000+1000";
                        SessionTerminationWithEmptyPost = no;
                        ConnectionRequestUsername = "";
                        ConnectionRequestPassword = "";
                        dnsprefer = tr069dnsprefer_ipv6;
                }
        }
        FirmwareDownload {
                enabled = no;
                enabled_converted = no;
                upload_enabled = no;
                valid = no;
                suppress_notify = yes;
                status = 0;
                StartTime = "1970-01-01 01:00:00";
                CompleteTime = "1970-01-01 01:00:00";
                method = Download_Method_DL;
        }
        RebootRequest = no;
        RebootRequest_CommandKey = "";
        ACS_SSL {
                verify_server = yes;
                trusted_ca_file = "/etc/default/root_ca.pem";
        }
        Download_SSL {
                verify_server = yes;
                trusted_ca_file = "/etc/default/root_ca.pem";
        }
        guimode = guimode_visible;
        lab {
                Enable = no;
                URLAlreadyContacted = no;
                PeriodicInformInterval = 0;
                Features = 65535;
        }
}

Mehr als irritierend ist hier die erste Einstellung:

enabled = yes;

Wenn ich TR-069 deaktiviere, dann erwarte ich auch ein vollständig deaktiviertes Protokoll bzw. eine komplett deaktivierte Schnittstelle (Dienst).

Trotz "Deaktivierung" ist offenbar der TR-069 Dienst auf der FritzBox immernoch aktiv (= enabled).

Auch die nachfolgende Zeile mit dem "litemode" bessert meine Laune und das Vertrauen dabei nicht ! Wie wenig lustig dieses Thema und diese Einstellungen sind, können Sie z.Bsp. auch in diesem Heise Artikel erfahren: Millionen DSL-Router durch TR-069-Fernwartung kompromittierbar. Der Artikel stammt aus dem Jahr 2014; genügend Zeit also für eine Korrektur war vorhanden.

Den letzten Kontakt zum Server finden Sie in der Einstellung "LastSuccessfulContact".

svn: E205009: Local, non-commit operations do not take a log message or revision properties

Sollte bei einem SVN Befehl folgender Fehler auftreten:

svn: E205009: Local, non-commit operations do not take a log message or revision properties

... dann fehlt häufig der "file:///" Zusatz oder ist fehlerhaft.

Beispiel:

svn mkdir --parents /home/path/svn/name/{trunk,tags,branches} -m "initial dir creation"

erzeugt die o.a. Fehlermeldung. Der richtige (korrekte) Befehl lautet:

svn mkdir --parents file:///home/path/svn/name/{trunk,tags,branches} -m "initial dir creation"

SVN: Die Grundstruktur mit einem Befehl erzeugen

In einem SVN Repository können Sie die (meist) benötigte Grundstruktur mit den Ordnern "trunk", "tags" und "branches" mit einem einzigen Befehl in der Kommandozeile erstellen lassen:

svn mkdir --parents file:///path/to/svn/repositoryName/{trunk,tags,branches} -m "initial dir creation"

Der Parameter -m "initial dir creation" stellt dabei den zu speichernden Text dar.

Spam per Telefon: Fakeanrufe aus dem Ausland

Es nervt hauptsächlich Unternehmen und kleine Betriebe, denn Telefonnummer und Ansprechpartner sind zumeist einfach und öffentlich auf den Webseiten zu erkennen: Das Telefon klingt mehrfach am Tag und unbekannte Telefonnummer aus dem Ausland werden angezeigt.

Dabei gilt die erste und wichtigste Regel:

Nicht ohne Prüfung zurückrufen !

In diesen Tagen haben es Betrüger als neue Masche entdeckt, sich (meist Handy-) Nummern im europäischen Ausland besorgt. Wenn man dort ahnungslos zurückruft, dann können hohe Kosten entstehen.

Auch wenn man das Gespräch entgegen nimmt, wird einem auf englisch versucht, dubiose Methoden vorzustellen. Es sind meist Call-Center, denn der Gesprächslärm im Hintergrund ist beträchrlich.

Bei einem der letzten Anrufe haben sich die Anrufer leider entgültig als (dämliche) Betrüber verraten: Sie riefen von einer dänischen Nummer an. Nach zwei Sätzen Englisch wechselte ich die Sprache ins Dänische und der Anrufer war deutlich überfordert und vollkommen verwirrt.

Also erklärte ich ihm in der englischen Zwei-Worte-Kurzversion meine Meinung und legte auf.

Das ist auch die beste Empfehlung: Direkt wieder auflegen.

VirtualMin: .. request failed : Domain has no website, and DNS-based validation is not possible

Unter VirtualMin gibt es eineen Bug mit den Scripten zum Update der SSL Zertifikate von "Let's Encrypt". Nach dem bzw. beim Ausführen der autotomatischen Updates wird folgende Meldung produziert

Requesting a certificate for * from Let's Encrypt .. 
.. request failed : Domain has no website, and DNS-based validation is not possible

Derzeit steht noch kein Fix oder Update bereit. Die folgende Lösung behebt das Problem jedoch vorübergehend und erlaubt die automatische SSL Aktualisierung:

Melden Sie sich an Ihrem Server (oder dem Computer mit dem VirtualMin Server) als "root" an:

find / -name feature-ssl.pl

Notieren Sie sich den Fundort des gesuchten Perl-Scriptes (z.Bsp. "/usr/share/webmin/virtual-server/feature-ssl.pl")

nano /usr/share/webmin/virtual-server/feature-ssl.pl

Gehen Sie in Zeile 2148 (z.Bsp. durch die Tastenkombination "Strg Shift -") und korrigieren Sie die folgende (fehlerhafte) Zeile

if ($d->{'web'} && 0) {

in diese (korrigierte) Zeile:

if ($d->{'web'}) {

Beenden und speichern Sie die Datei (Tastenkombination "Strg X" und dann mit "Enter" bestätigen). Starten Sie nun VirtualMin neu:

/etc/webmin/restart

Fertig.

Einen Augenblick später wird das SSL Zertifikat erneuert und Sie erhalten (sofern Sie es eingestellt haben) eine E-Mail zu Bestätigung:

A new certificate was successfully requested from Let's Encrypt, and installed for xyz.com

Linux: Datei beginnend mit Bindestrich (Minus am Anfang) löschen

Um unter Linux eine Datei mit einem Minuszeichen am Anfang des Dateinamens zu löschen, benutzen Sie folgenden Befehl:
rm ./-dateiname
Wenn man den normalen RM Befehl ohne die Pfadangabe nutzt ("rm dateiname"), dann kommt es zu einer Fehlermeldung, da das Minuszeichen als optionaler Paramter gewertet wird.

Linux: SMART Befehl (smartctl) funktioniert nicht in CronJobs

Die Smart-Tools unter Linux sind Programme zur Überwachung und Auswertung von S.M.A.R.T Festplatten ("Control and Monitor Utility for SMART Disks").

Das Beispiel zeigt Ihnen alls Daten der als "/dev/sda" eingebundenen SMART-Festplatte an.
smartctl -d ata -A /dev/sda
In CronJobs ("scheduled cron jobs") arbeitet der Befehl "smartctl" häufig nicht ordentlich und liefert keine Werte bzw. keine Ausgabe. Um dieses Problem zu lösen, geben Sie im Bash-Script den kompletten Pfad zum Programm "smartctl" mit an:
/usr/sbin/smartctl -d ata -A /dev/sda

Linux "Failed to start poweroff.target" - Herunterfahren erzwingen

Wenn das System auf den normalen Befehl zum Herunterfahren (Shutdown) bzw. Neustart (Reboot)

shutdown -h now
mit folgender Fehlermeldung reagiert,
Failed to start poweroff.target: Unit poweroff.target failed to load
dann sorgt dieser Befehl für das sofortige Ausschalten des Servers:
systemctl --force --force poweroff

Debian: VirtualBox Guest Addons installieren

Um auf einem Debian 8 System die VirtualBox AddOns zu installieren können folgende Befehle benutzt werden:

apt-get install build-essential module-assistant
m-a prepare

Jetzt die CD mit den Dateien für die VirtualBox AddOns einlegen. Dieses wird bei virtuellen Computern (wie hier bei der VirtualBox) in fast allen Fällen per ISO Datei gemacht. Die passende ISO Datei mit den AddOns finden Sie kostenlos auf der VirtualBox Webseite.

Der folgende Schritt wird häufig vollautomatisch durch Debian übernommen. Nur wenn die CD nicht automatisch nach dem virtuellen Einbinden über die VirtualBox Oberfläche erscheint, bitte den folgenden Befehl ausführen:

mount /media/cdrom

Jetzt die Installation der AddOns von der CD starten:

sh /media/cdrom/VBoxLinuxAdditions.run

Nachdem die Installation beendet wurde, den virtuellen Computer bitte einmal neu starten. Erst danach werden alle AddOns (Mousezeiger, Auflösung, etc.) vollständig übernommen.

Debian: Terminal startet in GNOME nicht

Wenn in GNOME unter Debian 8 nach dem Starten des "Terminals" nur kurz das Wartesymbol zu sehen ist und dann kein Terminal geöffnet wird, können fehlende oder fehlerhafte Locales-Einstellungen die Ursache sein. Meist ist dann nur "de_DE@euro" aktiv.

Lösung:

"Alt+F1" drücken um das Terminal TTY1 auf dem Bildschirm zu öffnen. Dort als "root" anmelden.

dpkg-reconfigure locales

Jetzt zusätzlich zu den ausgewählten Sprachen die "de_DE.UTF-8" markieren.

Mit der Tab-Taste auf "OK" gehen und bestätigen

Jetzt das aktuelle Terminal wieder mit "Alt+F7" verlassen und dadurch zurück zur GNOME Oberfläche gelangen.

Jetzt sollte der Start eines "Terminals" erfolgreich verlaufen.