ToHo-Blog

Sunday, December 09, 2018

A last good bye to all the slanderers

Bedaure nicht die Toten. Bedaure die Lebenden. Und besonders all diejenigen, die ohne Liebe leben. Irgendwann werdet ihr vor dem Schicksal gerade stehen müssen, für all das Unrecht, das ihr anderen angetan habt.
https://www.youtube.com/watch?v=q8ir8rVl2Z4

Labels: , , ,

Tuesday, April 03, 2018

User authentication in XAMPP with Apache webserver under Windows

What is the starting point?

Under some circumstances there may be the need for a litte project on a webserver under Windows. There may exist more applications than this, but XAMPP has gained space in this task area and its utilisation is spread wide. XAMPP comes with Apache webserver, a DB, PHP and Perl. It is easy to install also by non-experts.

For some reasons parts of the webserver or its applications may have the need for restriction and user authentication. One way to implement this is the use of the .htaccess mechanism.

Why to use .htaccess mechanism?

With the file .htaccess you have the possibility to configure the user authentication without the need to change the Apache configuration files. Because the first character of the file name is a dot the file will be hidden in the directory for simple usage cases.

The file can be created with a text editor. Pay attention to give as the name only ".htaccess" (without the quotation marks) without a further file name extension. Then copy it to the website directory which you want to secure.

Be sure to place the file .htaccess exactly in the directory you want the user authentication to apply to. The settings in this .htaccess will affect everything in this directory and the below placed directories.
______________________________________________


Not with XAMPP - but in case you would use a Linux server or a Raspberry Pi you would have to activate the .htaccess file:

Activate the .htaccess file

The activation has to be done in the Apache configuration to allow the .htaccess to override the Apache config settings. BTW you need sudo rights to do this.
sudo nano /etc/apache2/sites-available/default
Or instead of nano use your prefered editor. In editing this file input the necessary content:
 <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
 </Directory>
After saving this file do a restart for Apache
 sudo service apache2 restart
______________________________________________

Create the new .htaccess file

If you did install XAMPP in D:\XAMPP and your application is in directory D:\XAMPP\htdocs\myapp (with underlying directory cgi-bin) then edit the .htaccess file this way (again, choose your prefered editor instead of nano):
nano D:/XAMPP/htdocs/myapp/.htaccess
.. input the content:
AuthUserFile /xampp/usr/.htpasswd
AuthGroupFile /dev/null
AuthName "Please Enter Password"
AuthType Basic
Require valid-user
Create the .htpasswd file

Besides the .htaccess file you need the user authentication file .htpasswd . Place it outside the web-home dir i.e. as sibbling usr in this path: D:/XAMPP/usr
To create the file use the webserver password creation application htpasswd (for XAMPP in D:\xampp\apache\bin\).

 D:\xampp\apache\bin\htpasswd -c -b D:\xampp\usr\.htpasswd jsmith awesome
This will create a line in the .htpasswd file looking like this: jsmith:VtweQU73iyETM
I had another case where the generated encrypted password was different and much longer. To be sure, every time use the htpasswd application. The switch -c creates a new file and the switch -b tells the generation to use the password given at the command line.

First time I did test it with these steps, unfortunately it didn't work. The solution included more parts. One was the usage of the password generation application htpasswd instead of creating it by using the simple crypt() function. In case of XAMPP under Windows the line ending had to be Windows style with \r\n (carriage return + line feed) instead of Linux style under a Linux system which consists only of \n (line feed or new line).

If you have difficulties don't hesitate to contact me.

Labels: , , , , , , ,

Monday, March 19, 2018

First Enterprise

This is the first known photo of the U.S.S. Enterprise model. The photo was taken in Los Angeles in 1965.

Labels: ,

Friday, March 02, 2018

Termin-Benachrichtigungen für Gruppen - das Yahoogroups Problem


1 Ausgangspunkt Yahoogroups Ereignisse
Früher konnte man in Yahoogroups Ereignisse einrichten. Dazu wurden dann Erinnerungen an die Mitglieder versandt. Das Feature wurde häufig von Vereinen genutzt. Inzwischen kann man keine neuen Ereignisse mehr eingeben. Bei manchen Gruppen ist der Menüeintrag disabled, bei andern Gruppen kann man noch den Kalender aufrufen aber keinen neuen Eintrag erzeugen. Yahoogroups wahrscheinlich meist genutztes Feature war und ist die Mailingliste.

2 Mögliche Alternativen
Als Alternativen fallen einem zuerst Kalender-Dienste ein wie z.B. Google Kalender. Dazu ist aber Vorarbeit nötig und nicht alle betroffenen Mitglieder einer Gruppe sind erfahren genug, dies alles selbst bei sich am PC oder Smartphone einzurichten. Die Idee ist deshalb eine Lösung zu finden, bei der die Betroffenen so wenig wie möglich oder sogar nichts zu tun brauchen.

3 Idee der Lösung
Die Idee ist, einen Kalender Dienst dazu zu bringen, Benachrichtigungen bzw. Erinnerungen zu versenden. Dann braucht es nur noch ein EMail Konto bzw. eine Email Adresse, die diese Erinnerung an die Gruppe bzw. Mailingliste weiterleitet. Als dafür mögliche Komponenten kommen Googlemail und Google Kalender in Verbindung mit Googlegroups in Betracht.

4 Die Lösung
Es wird im weiteren vorausgesetzt, daß die verschiedenen Dienste und Konten mit Sprache Deutsch verwendet werden.

4.1 Der Name
Es sollte für alle Dienste im Zusammenhang damit ein bestimmter Name verwendet werden. Beispielhaft wird verwendet: MCOberstadt

4.2 Das Googlemail Konto 
Es wird ein Googlemail-Konto eingerichtet.

Daten eingeben. Nach Abschluß erfolgt eine kurze Einleitung. Diese anschauen oder überspringen. Am Schluß kann man zum Postfach wechseln.

Es empfiehlt sich die Inbox umzustellen, damit man keine Nachrichten übersieht.
Zahnrad >> Einstellungen >> Posteingang >> Art des Posteingangs: Sortierter Eingang
Änderungen speichern

4.3 Der Google Kalender
Damit der Google Kalender aktiv wird, muß er zuerst aufgerufen werden. 
(Google Apps Icon, 3 x 3 Quadrate) ... oder 

4.4 Die Googlegroups Mailingliste 
Zuerst wird der Dienst Googlegroups aufgerufen:

Dann eine Gruppe erstellen mit GRUPPE ERSTELLEN . Als:
  • Gruppenname  (z.B.): MC Oberstadt Termine . 

Daraus macht Googlegroups als Gruppen-E-Mail-Adresse automatisch mc-oberstadt-termine . Die vollständige Adresse lautet dann mc-oberstadt-termine@googlegroups.com . Nach eigenen Anforderungen Beschreibung und Sprache definieren. Als:
  • Gruppentyp auf jeden Fall: E-Mail-Verteiler 

wählen bzw. lassen. Weitere Einstellungen:

  • Themen anzeigenAlle Gruppenmitglieder 
  • PostenAlle Gruppenmitglieder
    Das Anpassen der Berechtigungen für das Posten erfolgt später.  
  • GruppenbeitrittJeder darf einen Antrag stellen 

Zum Abschluss auf ERSTELLEN klicken. Eventuell wird mit einem Captcha (Prüfung) abgefragt, daß man selbst ein Mensch und kein Roboter ist, dann einfach die Fragen beantworten. Anschließend sollte eine Meldung am Bildschirm angezeigt werden, daß die Gruppe erstellt wurde. An dieser Stelle werden noch bestimmte Einstellungen angeboten.

Google-Profil
[_] Mit meinem Google-Profil verknüpfen und mein Foto in Posts anzeigen.
    (kann man machen, muss man aber nicht)

Angezeigter Name (Radio-Box Auswahl = eine der Möglichkeiten wählen)
(X) Vollständigen Namen aus meinem Google-Profil verwenden
(_) Dieses Alias verwenden: [__________] (anderen Name für Anzeige auswählen)

Am Ende einfach Meine Änderungen speichern klicken. Nun kann man noch eine Willkommensnachricht hinzufügen. Diese kann z.B. so aussehen:

Hallo neuer Teilnehmer,

willkommen in der MC Oberstadt Mailingliste. Hierüber werden künftig Termine für diese Gruppe verteilt.

Grüße, Listen-Admin

4.5 Mitglieder hinzufügen
Rechts oben [Zahnrad] (Einstellungen) >> Gruppeneinstellungen wählen. Es erscheint links ein Menü. Wähle Mitglieder >> Mitglieder einladen . Für einen Test kann man ein Mitglied auch direkt hinzufügen. Wähle Mitglieder >> Mitglieder direkt hinzufügen 
Nimm eine deiner Email Adressen. Eventuell zum Test eine neue Email Adresse erstellen. Für dieses Beispiel MC Oberstadt Ademin Email Adresse neu erstellen. 
Dann Email Adresse eingeben in Feld Geben Sie die E-Mail-Adressen der neuen Mitglieder ein. mcoberstadtademin@gmail.com . Eine Begrüßungsnachricht eingeben. Hinzufügen klicken. Captcha beantworten. 

4.6 Wie kommt die Benachrichtigung in die Mailingliste? 
Der anfangs erstellte Account leitet die Benachrichtigung weiter an die Mailingliste. Da dieser Account nur für das Verteilen der Erinnerungen gedacht ist, erstellen wir noch einen Filter im Mail Account, damit nur Kalender Benachrichtigungen weitergeleitet werden.

4.7 Mailingliste vorbereiten für Bestätigungscode für Weiterleitung
Zunächst muss man die Mailingliste öffnen, damit der Bestätigungscode für die automatische Weiterleitung überhaupt in der Gruppe angezeigt wird. Klicke [Zahnrad] (Einstellungen) >> Gruppeneinstellungen . Links im Menü Berechtigungen >> Grundlegende Berechtigungen . Rechts im Hauptfeld Posten: Öffentlich . Speichern .

4.8 Email Filter, Weiterleitung
Im Email Konto mcoberstadt@gmail.com einen neuen Filter einrichten über [Zahnrad] (Einstellungen) >> Einstellungen >> Reiter: Filter und blockierte Adressen >> Neuen Filter erstellen .  

Von: calendar-notification@google.com  
An:  me 

Dann unten klicken auf: Filter mit diesen Suchkriterien erstellen . Darauf folgt eine Dialogbox. Hier auf den Link klicken: Weiterleitungsadresse hinzufügen . Es erscheint die Seite für Einstellungen >> Weiterleitung und POP/IMAP . Hier Weiterleitung: >> Weiterleitungsadresse hinzufügen . Adresse mc-oberstadt-termine@googlegroups.com eingeben >> Weiter . Mit Fortfahren bestätigen. Es bleibt die Seite stehen von Einstellungen >> Reiter: Weiterleitung und POP/IMAP .

4.9 Bestätigungscode abholen
In der Mailingliste die Email mit dem Bestätigungscode öffnen, den Bestätigungscode in die Zwischenablage kopieren und auf der Seite mit den Einstellungen des Email Kontos wieder einfügen und auf Bestätigen klicken.

4.10 Filter abschließend einrichten
Im Email Konto im  Suchfeld eingeben:
from:(calendar-notification@google.com) to:me
>> (Lupe) Suchen . Im Suchschlitz rechts mit dem DropDown-Pfeil aufklappen. Filter mit diesen Suchkriterien erstellen .
[X] Weiterleiten an: mc-oberstadt-termine@googlegroups.com 
Filter erstellen

4.11 Gruppenberechtigungen anpassen in Mailingliste
[Zahnrad] (Einstellungen) >> Gruppeneinstellungen . Links im Menü: Berechtigungen >> Grundlegende Berechtigungen . Rechts im Hauptfeld Posten: Gruppeneigentümer und Gruppenmanager Speichern .

4.12 Termin erstellen mit Erinnerung
Gehe in den Kalender des Email Kontos. Einen neuen Termin eintragen zur nächsten vollen Viertelstunde. Termin bearbeiten. BENACHRICHTIGUNG HINZUFÜGEN >>
[E-Mail] [1___] [Minuten]
>> SPEICHERN 
Das fügt dem Termin eine Erinnerung per Email hinzu 1 Minute vor der Uhrzeit. Jetzt abwarten, bis die Zeit um ist und dann im Posteingang des Test Email Kontos mcoberstadtademin@gmail.com kontrollieren, ob die Erinnerung angekommen ist.

w.z.b.w - oder q.e.d.

5 Epilog
Jetzt passiert alles automatisch für jeden neuen Termin mit eingestellter Erinnerung per Email. Die Verwaltung der Empfänger kann der Admin ganz allein ohne Hilfe über die Mailingliste vornehmen.

Labels: , , , ,

Saturday, January 06, 2018

Update Apo-Notdienst Dorfen 2018

Der Apotheken-Notdienst-Plan Dorfen und Umgebung wurde aktualisiert. Alle Termine ab 25.12.2017 bis Jahresende, ab 01.01. erscheinen die Termine von 2018. Die Styles für Smartphones wurden angepaßt. Getestet wurde mit Android 8.0.0 auf Oneplus 3T. Derzeit scheint nur Chrome die Styles einigermaßen richtig darzustellen. Bei Problemen bitte melden.

Labels: , , , , , ,

Monday, October 30, 2017

Google Mail and blocked attachments

little helper Perl-script

Subject:
Since Oct 24. 2017 I noticed changes in GMail behaviour on attachments.

What was the starting point?

Some years ago I had the requirement to send me or a colleague some
files. These files did include executables, which is impossible as
GMail attachment. Gmail blocks this for security reasons. I know that
there are other ways like Dropbox or other Cloud services. But in this
case e-mail was prefered for some reasons.

I'm working on Windows OS. So there may be better solutions under
Linux systems. The goal was to set up a script for comfortable
handling these mail attachments which means simple encrypting and
decrypting for sending in GMail. Also it should self set some
preferences as the destination filename in encrypting. And it should
recognize if it was an already encoded file on it's file-extension
(.b64). Besides this it further should cover and change known
file-extensions such as *.zip, *.bat, *.cmd, *.exe in replacing last
character with "_" (*.zi_ and so on). This did work fine with simple
base64 encrypting till the Oct 24 2017. The base64 encoded files could
be attached without any issues on a GMail e-mail.

What did happen? / What is the solution?

On the named date it did not work any longer. It seems Google did
recognize base64 encoded files. I thought on a simple solution to keep
the process running. The idea was that Google should not _see_ that it
was base64 .. and look into if there are zip's or executables. I
simply added a following ROT13 character shift in encoding. The
file-ext for encoding was set to *.b64.r13 .

The script runs with a Perl installation. On missing destination file
name it automatically sets an file-ext for destination. It recognizes
an already encrypted file on it's extension *.b64.r13 and does a
decode in this case. The base64 and ROT13-encoded files can be
attached without any difficulty to a GMail e-mail. The call on an
encrypted file does the reverse. The call of the Perl-script is done
with a batch-file wich should be able to found through PATH-variable.
An possibly overwrite is recognized and can be avoided.

The help message states:

b64r13.pl - Benutzung/Usage:[perl] b64r13.pl [-e|-d] [-o] (quelldatei/source) [(zieldatei/destination)]
-e       encode (default)
-d       decode
-o       overwrite existing
-h|help  diese Hilfe/this help
ext(encode) = .b64.r13 (if no dest set)
source ext .b64.r13 = action: decode
Project is on Github: https://github.com/toohoo/base64rot13

Labels: , , , , ,

Saturday, September 09, 2017

Boon ist Bane - Fluch statt Segen. Absolute Vorsicht

Boon lehnt selbst angeforderte Dokumente ab. Boon hat bereits 4 Dokumente, um meine Identität und Adresse zu prüfen. Dies sind soweit:


  1. Personalausweis
  2. der Führerschein (wurde zurückgewiesen, weil er kein Ablaufdatum hat. Wer von euch hat einen Führerschein mit Ablaufdatum? Wenn er nicht anerkannt wird, warum wird er dann überhaupt als gültiges Dokument genannt?),  
  3. Kreditkartenabrechnung
  4. Steuerbescheid.


Den Personalausweis haben sie entschieden, nehmen sie nun als Identitätsnachweis. Sie brauchen noch einen Adressnachweis. Nachdem nun Boon bereits die Kreditkartenabrechnung abgelehnt hat, obwohl das eines der von ihnen selbst festgelegten Dokumente ist, haben Sie nun auch noch den Steuerbescheid abgelehnt. Die möglichen Dokumente sind laut Email von boonpayment:

Einen Identitätsnachweis:

  • Personalausweis
  • Reisepass
  • Führerschein (muss ein Ablaufdatum aufweisen)


Einen Adressnachweis:

  • Personalausweis (in Kombination mit einem anderen Identitätsnachweis)
  • Versorgerrechnung (nicht älter als 3 Monate, z.B. Stromrechnung, Telefonrechnung Festnetz)
  • Kontoauszug (nicht älter als 3 Monate, von einem regulierten Finanzinstitut)
  • Kreditkartenabrechnung (nicht älter als 3 Monate, von einem regulierten Finanzinstitut)
  • Gerichtliche Anordnung (nicht älter als 3 Monate, z.B. Testamentsvollstreckung, Schreiben Insolvenzverwalter)
  • Nachweis über behördliche Leistung (nicht älter als 3 Monate, z.B. Wohngeld, Steuergutschrift, Pensionszahlung)
  • Steuerbescheid (nicht älter als 12 Monate)
  • Aufenthaltstitel (nicht älter als 12 Monate)
  • Meldebescheinigung (nicht älter als 3 Monate)

Als Antwort auf die Zusendung der Kreditkartenabrechnung (vom 22.08.2017, also nicht älter als 3 Monate) schrieben sie:
Wie wir Sie aber in unserer letzten E-Mail informiert haben, brauchen wir im Fall eines Online-Dokumentes, das als Adressnachweis eingereicht wird, aus Sicherheitsgründen ein weiteres Online-Dokument aus anderer Quelle.
Sie erklären also die Kreditkartenabrechnung zum Online-Dokument. Was soll denn ein Online-Dokument sein, und welches ist keines? Die elektronische Lohnsteuerbescheinigung wurde auch abgelehnt.  Dann sende ich mal jetzt noch den Steuerbescheid datiert auf den 10.03.2017 hin.

Es hat sich bis jetzt von denen noch keiner die Mühe gemacht, das Problem auf dem kurzen Weg zu lösen. Z.B. haben sie von Beginn an meine Telefonnummer. Das wäre mal eine Initiative, um Kunden zu helfen. Aber wenn sie sich am Telefon genau so wenig hilfreich, dafür aber ablehnend verhalten, würde das wohl auch keine Lösung bringen.

Ich kann jedem nur abraten von Boon. Die Idee finde ich Klasse, aber der Umgang mit den Kunden ist absolut unmöglich. Das macht die Benutzung des Dienstes indiskutabel.

PS: Falls es schon jemand geschafft haben sollte, auf Plus umgestellt zu werden, bitte sagt mal, was die akzeptiert haben. Danke.

Update am 11.09.2017:
Boon hat geantwortet und mich auf Plus umgestellt. Ihr Kommentar auf Facebook ist hier:
https://www.facebook.com/toohoo/posts/10155383453790342?comment_id=10155388587245342&comment_tracking=%7B%22tn%22%3A%22R%22%7D

Labels: , , ,