Mrz 292018
 

Outlook 2016 meldet beim Versuch, ein Exchange-Konto einzurichten: Es steht keine verschlüsselte Verbindung mit Ihrem E-Mail-Server zur Verfügung?

Grund hierfür kann sein, dass die autodiscover-Funktion für den betreffenden Domainnamen nicht funktioniert. (Zu prüfen mit Strg-Rechtsklick auf das Outlook-Icon im System Tray rechts in der Taskleiste, dort: E-Mail-AutoKonfiguration testen.)

Hier half bis Outlook 2013, das Konto manuell unter Angabe des Servers anzulegen (z. B. outlook.office365.com für Exchange Online). Dies ist mit Outlook 2016 nicht mehr möglich!

Teilweise wird empfohlen, statt dessen ein Exchange ActiveSync Konto anzulegen, da dort die Eingabe des Servernamens möglich ist, und bei der Fehlermeldung, der Server sei nicht erreichbar, Outlook über den Task-Manager abzuschießen. Danach ist es tatsächlich möglich, das Konto in Outlook zu nutzen. Allerdings ist dies nicht zu empfehlen, da das Exchange ActiveSync Protokoll nur für mobile Geräte und niedrige Bandbreiten gedacht ist. Welche Funktionseinschränkungen daraus resultieren, ist mir nicht bekannt.

Also zurück zur Überschrift: Outlook 2016 ohne autodiscover.xml mit einem Exchange Server zu verbinden geht m. W. gar nicht, es sei denn man weiß, wie man das Konto manuell in der Registry anlegt. Alternativ kann man aber z. B. eine lokale autodiscover.xml anlegen, die eine Umleitung auf die gewünschte autodiscover.xml des Mailhosters ist, wenn man für den eigenen Domainnamen nicht die erforderliche Konfiguration vornehmen kann. (… was ich mich in den DNS-Einstellungen bei 1&1 im Moment nicht mehr traue, da man dann bestätigen muss, dass alle Mailadressen und Umleitungen gelöscht werden, obwohl dies damit überhaupt nicht in Zusammenhang steht.)

Anlegen einer lokalen autodiscover.xml (in diesem Beispiel für Exchange Online)

Für das Beispiel habe ich diese autodiscover.xml in c:\temp abgelegt:


<?xml version="1.0" encoding="utf-8"?>
<Autodiscover xmlns="http://schemas.microsoft.com/exchange/autodiscover/responseschema/2006">
<Response xmlns="http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a">
<Account>
<AccountType>email</AccountType>
<Action>redirectUrl</Action>
<RedirectUrl>http://autodiscover.outlook.com/autodiscover/autodiscover.xml</RedirectUrl>
</Account>
</Response>
</Autodiscover>

Damit Outlook die Datei findet, sind diese Registry-Einträge notwendig (beispiel.domain durch die Domain des Exchange-Kontos ersetzen):


Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Outlook\AutoDiscover]
"beispiel.domain"="c:\\temp\\autodiscover.xml"
"PreferLocalXML"=dword:00000001

Jan 022018
 

Oh .. endlich mal eine Anwendung für den „neuen“ Personalausweis! Die Onlinefunktion habe ich seit einem Test 2010 nicht mehr verwendet. Nun sagt Elster, dass die USt-Erklärung ab 2017 nur noch mit Zertifikat möglich sei und man dieses mit dem nPA sofort bekommen könne. Wäre schön gewesen … geht natürlich nicht. Die aktuelle AusweisApp2 oder der Kartenleser oder dessen Treiber – irgendetwas – erkennt meinen aufgelegten Ausweis nicht, egal wie ich ihn drehe und wende. Der Klick auf Diagnose bringt keine Fehlerhinweise außer „Kein Ausweis erkannt“.

Die FAQ zur AusweisApp2 empfehlen in diesem Fall, manuell den Treiber von der Hersteller-Website zu installieren. Dies führt jedoch zu diesem Fehler:

Meine Versuche beziehen sich auf den Kartenleser SCL011 P/N 905204 unter Windows 10. Zum Treiber.

Dez 212017
 

Manchmal möchte man allen Nutzern im Netz die Möglichkeit geben zu sehen, wer im Haus gerade anwesend ist bzw. eine Samba/smb-Verbindung zur DiskStation aufgebaut hat.

Im Folgenden ein Weg, diese Information über einen Webserver auf der DiskStation unter einer Adresse wie http://diskstation.intern/benutzer.php bereitzustellen:

1. Voraussetzung ist die Installation der Pakete WebStation und PHP 7.0.

2. Im Aufgabenplaner ein benutzerdefiniertes Script, welches alle fünf Minuten als root ausgeführt wird, einrichten:

/bin/smbstatus -S |cut -f 3,4 | grep . | sort | uniq | tee /tmp/benutzer-list
date | tee /tmp/benutzer-date

3. Unter /volume1/web/benutzer.php das Ausgabescript ablegen:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
 <meta http-equiv="expires" content="0">
 <meta http-equiv="cache-control" content="no-cache">
 <meta http-equiv="pragma" content="no-cache">
 <meta http-equiv="refresh" content="600;url=/benutzer.php">
 <title>Aktuell angemeldete Benutzer</title>
</head> 
<body text="#00335B" bgcolor="#FFFFFF" link="#F49807" vlink="#F49807" alink="#FFCC33" style="width: 95%; margin-left:auto; margin-right:auto; font-family: Helvetica, Arial, Geneva, sans-serif;">
<table border="0">
<tr>
<td width="90%">
 <h3><b>Aktuell angemeldete Benutzer</b></h3>
</td>
<td align=right><img src="Logo.png"></td>
</tr>
</table>
<?php
echo "<table>";
echo "<tr><th width=\"130\" align=\"left\">User</th><th align=\"left\">Workstation</th></tr>";
$file = '/tmp/benutzer-list';
$file_handle = fopen($file, 'r');
while (!feof($file_handle)) {
 $line = fgets($file_handle);
 $spline = preg_split('/\s+/', $line);
 if (!empty($spline[0])) {
 echo "<tr><td>";
 echo $spline[0];
 echo "</td><td>";
 echo gethostbyaddr($spline[1]);
 echo "</td></tr>";
 }
}
fclose($file_handle);
echo "</table><br>";
echo "Anzahl: ";
echo shell_exec("wc -l < /tmp/benutzer-list");
echo "<br><br>";
echo shell_exec("cat /tmp/benutzer-date");
?>
</body>
</html>

4. In /etc.defaults/samba/smb.conf und /etc/samba/smb.conf diese Zeilen ergänzen und samba neu starten (/usr/syno/etc/rc.sysv/S80samba.sh restart):

socket options=SO_KEEPALIVE TCP_KEEPCNT=4 TCP_KEEPIDLE=240 TCP_KEEPINTVL=15
deadtime=10
keepalive=150
Dez 142017
 

Über meine Erfahrungen mit Ubiquiti UniFi Produkten hatte ich bereits früher berichtet: WLAN mit Roaming bezahlbar

Heute mein Versuch eines minimalen Monitorings der UniFi-Produkte mit Nagios:

Da die beiden existierenden Nagios-Plugins, welche über SNMP Detailinformationen des UniFi-Controllers abrufen und auswerten, bei mir nicht zum Laufen zu bekommen sind, habe ich ein minimales Plugin geschrieben, welches lediglich die Erreichbarkeit der Access Points per ping und des Controllers auf tcp Port 8443 prüft. Die Adressen und Bezeichnungen müssen direkt im Code selbst geändert werden. Der Ausfall eines Access Points gibt den Status WARNING zurück, der Ausfall mehrerer Access Points den Status CRITICAL. Der Ausfall des Controllers gilt ebenfalls als CRITICAL.


#!/bin/bash

ping="/bin/ping"
nc="/bin/nc"
failures=0
output=""

docheck(){
if ! $ping -c 1 -w 1 $1 > /dev/null; then
((failures++))
output+="AP $2 DOWN; "
else
output+="AP $2 UP; "
fi;
}

docheck-ctrl(){
if ! $nc -z -w1 $1 8443 > /dev/null; then
# Wertung als Doppelfehler, da kritisch
((failures++))
((failures++))
output+="Controller $2 DOWN; "
else
output+="Controller $2 UP; "
fi;
}

# Pruefung der Access Points (nur ping)
docheck "192.168.1.50" "Erdgeschoss"
docheck "192.168.1.51" "Trakt A"
docheck "192.168.1.52" "Trakt B"
docheck "192.168.1.53" "Keller"
docheck "192.168.1.54" "Empfang"
docheck "192.168.1.55" "Halle"
docheck "192.168.1.56" "Hof"
# Pruefung des Controllers (tcp 8443)
docheck-ctrl "192.168.1.5" "unifi-Controller"

if [ $failures -lt 1 ]
then
echo "OK- $output"
exit 0
elif [ $failures -eq 1 ]
then
echo "WARNING- $output"
exit 1
elif [ $failures -gt 1 ]
then
echo "CRITICAL- $output"
exit 2
else
echo "UNKNOWN- $output"
exit 3
fi

 

Dez 072017
 


Bei Überwachung eines Synology High-Availability Clusters (HA-Cluster) mit Nagios möchte man gern eine Warnung erhalten, wenn nicht mehr der primäre, sondern – aufgrund eines Ausfalls desselbigen – der sekundäre Server aktiv ist?

Dies kann einfach erreicht werden, indem man im Plugin check_snmp_synology zwischen den anderen Checks folgenden Code einfügt, um anhand der Seriennummer der aktiven DiskStation zu prüfen, welches Gerät gerade angesprochen wird. Im Code ist „1740PVN123456“ durch die Seriennummer des primären Servers des HA-Clusters zu ersetzen.


#Check system serial
if [[ "$serialNumber" == *"1740PVN123456"* ]] ; then
systemSerial="primary"
else
systemSerial="non-primary (WARNING)"
healthWarningStatus=1
healthString="$healthString, System serial: $systemSerial "
fi

Somit steht einem Monitoring des Wechsels zwischen aktivem und passivem Server nichts mehr im Wege.

Nov 212017
 

Wenn die Onlineaktivierung eines Produktes (z. B. Windows 10, Office 2016) mal nach Umzug auf einen neuen PC nicht klappt, half bisher die telefonische Produktaktivierung.

Hier gibt es nun ganz neu zwei Hindernisse:

  • Die telefonische Aktivierung für Windows 10 konnte bisher mit dem Befehl „slui 4“ aufgerufen werden. Nach Eingabe des Befehls passiert im neuesten Windows 10 Release jedoch nichts. Hat hier jemand eine Lösung? Nachtrag: Ein Anruf bei Microsoft unter 0180 6 67 22 55 konnte hier helfen. Ich habe sogar einen neuen Key bekommen, da mit einem alten keine Aktivierung mehr möglich war. Allerdings hat das Telefonat inkl. diverser Warteschleifen und mehrmals Weiterverbinden 45 Minuten gedauert.
  • Bei Office 2016 erscheint die Meldung „Die telefonische Aktivierung wird für dieses Produkt nicht mehr unterstützt“. Zum Glück stimmt das nicht. Einfach 0800 2848283 anrufen und die gewohnte Prozedur beginnt.

Eine telefonische Aktivierung kann übrigens auch online über diesen Link simuliert werden:
pseudotelefonische Aktivierung
Allerdings hatte ich auf diesem Weg bereits das Problem, dass nach Eingabe von „1“ auf die Frage „Auf wie vielen PCs ist das Produkt installiert?“ als Antwort kam: „Oh je, zulässige Anzahl Installationen überschritten“. Bei der gleichen Prozedur per Telefon wurde die Antwort „1“ jedoch mit einer Aktivierungskennung beantwortet.

Okt 012017
 

Bei Kauf eines 4K Fernsehers mit Android sollte man denken, eigene Fotos und Videos in 4K komfortabel anzusehen, sei kein Problem – gefällt einem die App des TV-Herstellers nicht, bietet ja Android genug Alternativen, oder?

Leider ist es zumindest beim Sony KD-49XE8005 so, dass alle mir bekannten Android-Apps – außer den Sony eigenen „Album“ und „Video“ – nur eine Auflösung von 1080p, also Full HD, erkennen und darstellen.

Mit „Album“ Fotos anzusehen, wird leider zur Qual: Bei einem DLNA Server als Bildquelle hat man die Wahl zwischen manuellem Fotowechsel, wobei bei jedem Wechsel ein schwarzer Balken mit Dateiname und weiteren Infos viel zu lange eingeblendet wird, oder einer automatischen sogenannten „Diashow“, die immer beim ersten Foto in einem Verzeichnis startet und eine sehr laaaangsame Überblendung zwischen den Fotos bietet, die nicht abstellbar ist. Hmm .. vielleicht besser die Fotos über einen USB-Stick dem Sony-Gerät bereitstellen? Nein .. keine gute Idee. Bei tausenden Fotos in ca. 500 Verzeichnissen waren nach minutenlangem Warten nur die ersten Verzeichnisse erkannt worden.

Videos mit „Video“ ansehen klappt dagegen schon besser, immerhin kann die App sogar H.264/MPEG-4 AVC mit 50fps decodieren. Spulen – insbesondere rückwärts, was ja eher kein Problem sein sollte, geht hingegen fast gar nicht.

Bleibt also nur die Möglichkeit, extern per HDMI 4K Filme und Fotos zuzuspielen. Wer kein Notebook besitzt, was dazu in der Lage ist, landet schnell bei Mini-PCs, wie z. B. den Orbsmart-Geräten, die mit Android oder Windows 10 erhältlich sind. Doch Achtung: Zumindest die Windows 10 Geräte können 4K nur mit 30 Hz darstellen, was bei Bewegung flackernde Mauszeiger bedeutet und für Videos mit einer höheren Framerate denkbar ungeeignet ist. Um die geliebten Bildbetrachter und Videoplayer unter Windows nutzen zu können, muss also andere Hardware her: Z. B. ein Intel NUC. Auch hier Vorsicht: Jene Modelle, die 4K ausgeben können, tun dies in 60 Hz teilweise gar nicht, teilweise nur über den Displayport und nicht über HDMI (wobei der letzte Punkt mit einem geeigneten Adapter lösbar ist). Wer einen Output in 2160p60 über HDMI möchte, muss ein Gerät z. B. mit Iris Plus Graphics 640 wählen (damit soll zudem auch HDR möglich sein, falls es irgendwann einen HDR-geeigneten Treiber für Windows 10 gibt).

Nachtrag: HDR mit Windows 10? In den Windows-Anzeigeeinstellungen gibt es laut c’t eine Option „HDR und erweiterte Farbe“. Diese sei ebenso zu aktivieren, wie „HDR-Video streamen“ in den Videowiedergabe-Einstellungen unter Einstellungen/Apps. 4K HDR bei Netflix? Wie Heise berichtet, muss hierzu evtl. der HEVC-Codec (zu finden im Microsoft Store) manuell installiert werden: https://www.heise.de/newsticker/meldung/Windows-10-Fall-Creators-Update-schmeisst-HEVC-Codec-raus-Microsoft-zwingt-Nutzer-in-Store-3908921.html

Sep 052017
 

Meine kleine Notebook Maus Logitech M215 ist nach vielen Jahren defekt. Einmal zu oft auf die Fliesen geknallt, nun macht sie aus einem linken Mausklick manchmal zwei.

Kein Problem? Die M215 ist nicht mehr erhältlich, ein Fotovergleich zeigt, dass die M235 der Nachfolger zu sein scheint. Bei Eintreffen der M235 der erste Schreck: Sie ist etwas kleiner als die M215. Könnte man sich dran gewöhnen, jedoch: Sie klappert bei jeder Bewegung, kratzt auf der Couch, das Mausrad rastet nicht ordentlich ein, die Steuerung insgesamt ist auch unpräzise.

Zum Glück kann ein Händler aus Österreich noch einige M215 liefern:

Aug 302017
 

Vor paar Wochen wurde Spotify auf meinem Onkyo-Receiver NR616 eingestellt. Also habe ich mich umgewöhnt und die App auf einem Samsung-TV benutzt … war auch deutlich moderner und schöner – geb ich zu. Und jetzt: Am 1.9. wird die Spotify-App von Samsung vom TV entfernt, kündigt eine Einblendung an. Keine Unterstützung mehr.

Bedeutet: Ein weiteres Gerät kaufen, um Spotify weiter über den Verstärker hören zu können!?

Jun 082017
 

Hat man einmal einen gültigen Key eingegeben, gibt’s in Office 2016 keine Chance, diesen zu ändern. Auch nicht mit Deinstallation und Neuinstallation.

Nach Entfernung des aktuellen Keys auf diesem Weg (in cmd als Administrator), fragen die Office-Programme beim nächsten Start endlich wieder nach einer Lizenz:


C:\Program Files <x86>\Microsoft Office\Office16>cscript ospp.vbs /dstatus

(office16 = Office 2016, office15 = Office 2013)

Die angezeigten letzten fünf Stellen des aktuellen Keys sind statt XXXXX im nächsten Befehl einzusetzen:


C:\Program Files <x86>\Microsoft Office\Office16>cscript ospp.vbs /unpkey:XXXXX

 

Mai 062017
 

KB4015549 (Monthly Rollup, April 2017) für Windows 7 SP1 kann unter Win 7 64 Bit nicht installiert werden:

Code 8024200D Unbekannter Fehler bei Windows Update

Manueller Download+Installation klappt auch nicht. Dies hier hilft nicht: Updateprobleme und das auch nicht: https://answers.microsoft.com/en-us/windows/forum/all/error-windowsupdate8024200d-windowsupdatedt000/2b38439c-6748-4891-87f8-ba954d56042e

Jemand eine Idee?

Apr 272017
 

Bei Auslieferung ist der T1700G-28TQ von TP-LINK unter der IP 192.168.0.1 erreichbar.

Stellt man das Interface Vlan1 über die Web-Oberfläche auf DHCP um, sollte der Switch anschließend (oder beim nächsten Start?) eine IP vom DHCP-Server anfordern. Nach Auswahl von DHCP und Klick auf „Apply“ verliert man naturgemäß die Verbindung zum Switch und denkt, das war erfolgreich. Allerdings habe ich – bei allen gekauften Geräten – festgestellt, dass die Umstellung auf DHCP so nicht klappt, der Switch also weiter statisch unter 192.168.0.1 erreichbar bleibt.

Lösung war, dem Switch zuerst statisch die IP zuzuweisen, die er eigentlich vom DHCP-Server bekommen sollte und dann im nächsten Schritt auf DHCP umzustellen. Auf diesem Weg sieht man nach „Apply“ auch die Meldung „Operation succeeded“ und tatsächlich ist das Gerät dann auf DHCP umgestellt und spricht fortan mit dem DHCP-Server. Vor dem nächsten Stromausfall nicht vergessen: „Save Config“ …

Apr 252017
 

Outlook (2013/2016) und OWA zeigten plötzlich „öffentliche Ordner“ überhaupt nicht mehr an.

Nach Setzen eines neuen Alias für das Postfach der öffentl. Ordner per Power Shell war der Fehler behoben:


Set-Mailbox -PublicFolder -Identity "Name des Postfachs" -Alias "Neuer Alias"

Warum, weiß ich nicht. Die Lösung kam vom Microsoft Support ohne Begründung.

Apr 122017
 

Manchmal möchte man vom IDE zum AHCI-Modus wechseln (z.B. bei Einbau einer SSD). Vor Umstellung im BIOS muss jedoch Windows 7 wie folgt vorbereitet werden, sonst ist kein Systemstart mehr möglich:

  • regedit starten
  • Im Schlüssel HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ Msahci den Wert Start auf 0 setzen.
  • Im Schlüssel HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ Pciide den Wert Start auf 0 setzen.
  • Vor dem nächsten Hochfahren von Windows 7 das BIOS auf AHCI umstellen.
Mrz 222017
 

Bei einem Toshiba Tecra M11 lässt sich weder mit F2 das BIOS noch mit F12 das Boot-Menü aufrufen?

Das kann daran liegen, dass im BIOS ein Supervisor-Passwort gesetzt wurde.

Die Lösung: Nach dem Einschalten INS/Einfügen drücken und danach F2.

Dez 102016
 

Wie kann man nahezu unterbrechungsfrei eine Apache Website auf eine neue IP-Adresse umziehen, ohne warten zu müssen, bis die neue IP-Adresse weltweit bekannt ist (abhängig von der TTL der DNS-Einträge)?

Ziel: Zugriffe auf die alte IP-Adresse sollen auf die neue weitergeleitet werden, bis allen Clients die neue IP-Adresse bekannt ist.

Um dies zu erreichen, sollte auf dem alten Server, direkt nach Kopieren der Daten auf den neuen Server, mit a2enmod proxy_http das http-Proxy-Modul des Apache eingeschaltet werden. Der alte Webserver kann dann eine Konfiguration wie diese bekommen:

<VirtualHost *:80>
        ServerAdmin webmaster@domain.xy
        ServerAlias www.domain.xy www2.domain.xy
       
        ProxyPreserveHost On
        ProxyPass / http://123.123.123.123/
        ProxyPassReverse / http://123.123.123.123/

        ErrorLog /var/log/redirect-error_log
        CustomLog /var/log/redirect-access.log combined
</VirtualHost>

Im Beispiel: www.domain.xy und www2.domain.xy sind die Hostnamen der umziehenden Website, 123.123.123.123 ist die IP-Adresse des neuen Webservers.
Voraussetzung: Der alte Webserver darf http-Verbindungen nach außen, speziell zum neuen Webserver aufbauen. Diese Umleitung funktioniert auch bei Namedvirtualhosts auf dem neuen Server.

Dez 092016
 

Voraussetzung für die Installation eines DATEV 10.0 Arbeitsplatzes (genauer: DATEV 10.0 mIDentity, SmartCard, Sicherheitspaket) auf einem Windows 7 System, ist das SHA-2-Update (KB3033929) von Microsoft.

Allerdings lässt dieses sich teilweise nicht installieren: Meldung, es sei bereits installiert, obwohl dies nicht der Fall ist.

Der hierfür von DATEV angebotene Fix brachte keine Besserung (trotz der Meldung „Ihr System erfüllt nun die Voraussetzungen für die Installation“). Infos von DATEV zum Thema: Dokument 1017539

Lösung:

  • Das Sicherheitsupdate hier herunterladen.
  • Die Datei Windows6.1-KB3033929-x64.msu entpacken, z. B. mit 7-Zip.
  • Ein cmd-Fenster mit Administratorrechten öffnen.
  • Die entpackte cab-Datei mit diesem Befehl installieren: dism /online /add-package:Windows6.1-KB3033929-x64.cab
Dez 022016
 

Hat eine Site mehrere Domains, die gemeinsam ausgewertet werden sollen (Anbindung an Google Analytics wie hier mit diesem Code), sollten alle beteiligen Domains unter „.js Tracking Informationen“ in die „Verweis-Ausschlussliste“ eingetragen werden.

Um identische Pfade innerhalb der verschiedenen Domains in den Berichten unterscheiden zu können, kann ein benutzerdefinierter Filter wie folgt angelegt werden:

Google Analytics 1

Die Homepage wird mal als „/“, mal als „/index.html“ bzw. „/index.php“ aufgerufen? In den Berichten soll dies alles gemeinsam gezählt werden. Dies realisiert folgender benutzerdefinierter Filter am Beispiel von „index.html“:

Google Analytics 2

Alle URLs in Kleinbuchstaben umschreiben? Mit diesem benutzerdefinierten Filter:

Google Analytics 3

URLs von Verzeichnissen immer mit „/“ abschließen? Mit diesem benutzerdefinierten Filter:

Google Analytics 4

Alle URL-Parameter vor der Analyse abschneiden? Mit diesem benutzerdefinierten Filter:

Google Analytics 5

Eigene Zugriffe / eigene IP ausschließen? Mit diesem vordefinierten Filter:

Google Analytics 6

Warum fehlt bei der Beispieladresse das letzte Octet? Weil ich davon ausgehe, dass alle IP-Adressen anonymisiert werden, wie für Deutschland vorgeschrieben. Deshalb können eigene Zugriffe anhand der IP-Adresse natürlich nicht mehr eindeutig identifiziert werden. Bei dieser Lösung filtert man natürlich auch Zugriffe von anderen (es sei denn wir sprechen vom eigenen /24-Netz), deren IP sich nur im letzten Octet von der eigenen unterscheidet. Wen das stört, der muss eine der Lösungen ab Variante 2 von hier verwenden: http://www.thomashutter.com/index.php/2013/10/google-analytics-5-varianten-zum-ausschluss-von-internen-ips-besuchern/

 

Dez 022016
 

Um mehrere Domains, die in der Statistik zusammengefasst sein sollen, unter einer einzigen Google Analytics Property zu erfassen und trotzdem keinen hässlichen „_ga“-Parameter beim Domainwechsel an den URLs zu haben, eignet sich folgender Code:

<script>
var gaProperty = 'UA-0000000-1';
var disableStr = 'ga-disable-' + gaProperty;
if (document.cookie.indexOf(disableStr + '=true') > -1) {
window[disableStr] = true;
}
function gaOptout() {
document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/';
window[disableStr] = true;
}
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-0000000-1', 'auto', {'allowLinker': true});
ga('require', 'linker');
ga('linker:autoLink', ['www.dom1.xy', 'www.dom2.xy', 'www.dom3.xy'] );
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
$(window).load(function() {
currentURL = window.location.href;
newURL = currentURL.replace(/&_ga(\=[^&]*)?(?=&|$)|_ga(\=[^&]*)?(&|$)/,"");
if(newURL.substr(-1) === "?"){newURL = newURL.slice(0, - 1)}
history.replaceState("state", "", newURL);
});
</script>

Beispiel-Sites im Code: www.dom1.xy, www.dom2.xy, www.dom3.xy, Beispiel-Property im Code: UA-0000000-1

Weitere Hinweise zu Google Analytics

Nov 242016
 

Das Teilen auf Facebook und Tweeten auf Twitter kann auch heute noch in eine Website eingebunden werden, ohne bei jedem Seitenaufruf ungefragt (und datenschutz-problematisch) eine Verbindung zu den Dienstanbietern herzustellen – z. B. mit diesem Script:

<script type="text/javascript">
function fbshare(){
var sharer = "https://www.facebook.com/sharer/sharer.php?u=";
window.open(sharer + location.href,'sharer', 'width=626,height=436');
}
function twshare(){
var sharer = "https://twitter.com/share?url=";
window.open(sharer + location.href,'sharer', 'width=626,height=436');
}
</script>

Lokal abgelegte Buttons können dann z. B. so verlinkt werden:

<img src="fbshare.png" onclick="fbshare();" onMouseOver="this.style.cursor='pointer'">
<img src="twshare.png" onclick="twshare();" onMouseOver="this.style.cursor='pointer'">
Nov 152016
 

Fail2ban ist ein flexibles Intrusion Prevention System. In diesem Fall sollen Angriffe auf eine Typo3-Installation erkannt und geblockt werden.

Achtung: Die folgende Lösung zählt auch erfolgreiche Logins als Fehler und ist daher nur geeignet, wenn man IPs, von der viele erfolgreiche Logins zu erwarten sind, in /etc/fail2ban/jail.conf mit ignoreip ignoriert und gute Werte für findtime und maxretry findet, um eine noch zulässige Anzahl Logins von anderen IPs zu ermöglichen. Für Angriffe von ausgeschlossenen IPs besteht dann natürlich kein Schutz, was akzeptabel sein kann, wenn es „hausinterne“ sind.

Zunächst als Datei /etc/fail2ban/filter.d/apache-typo3.conf einen neuen Filter anlegen:


[Definition]
failregex = ^<HOST> .*"POST .*loginProvider.*
ignoreregex =

In /etc/fail2ban/jail.local anlegen/hinzufügen:

[apache-typo3]
enabled = true
port = http,https
filter = apache-typo3
logpath = /var/www/logs/*access_log*

Hinweis: Fail2ban wird nicht wie erwartet funktionieren, wenn die Zeitzone der Einträge in den Logfiles eine andere ist, als die unter der fail2ban läuft. Nach Ändern der Zeitzone (dpkg-reconfigure tzdata) zudem nicht vergessen, den Apache neu zu starten. Ein Punkt, der mich Stunden Fehlersuche gekostet hat. Eine andere Falle kann sein, dass backend = auto in /etc/fail2ban/jail.conf auf bestimmten Systemen nicht funktioniert. Hier sollte backend = polling immer funktionieren.

Nov 042016
 

Hatte kürzlich Bildstörungen beim TV-Empfang gemeldet. Heute ein Anruf von Unitymedia: Das Produkt Fernsehen würde im Business-Bereich gar nicht angeboten, man verstehe nicht, wie ich da eine Störung melden könne, als Geschäftskunde.

Komisch, ich habe „Business TV“ schon länger. So heißt es nämlich und ist auch aktuell noch buchbar: https://www.unitymedia.de/business/selbststaendige/business-tv/tv-pakete/