Thunderbird

Die neue Kontoeinrichtung abdrehen – Einstellungen (Allgemein):

Damit geht das Anmelden mit nicht automatischen Daten geschmeidiger.


Profilmanager:

"C:\Program Files\Mozilla Thunderbird\thunderbird.exe" -p

Aufruf des Profilmanagers im Thunderbird – Hilfe – Information zur Fehlerbehebung – Allgemeine Informationen – Profile (about:profiles)


Faktorielle mit Fenster

Die Fakultät einer Zahl (n!) mit Ein-/Ausgabe per Fenster (tkinter).

def rechnen():
	zahl1=int(zahl.get())
	i=1
	ergebnis=1
	for i in range(zahl1):
		ergebnis = ergebnis * (i+1)
	erg.configure(text = str(ergebnis))

import tkinter as tk
from tkinter import *

root = Tk()

Label(root, justify=CENTER, text="Fakultät einer Zahl berechnen").pack()

zahl=Entry(root)
zahl.pack()

Button(root, text='Berechnen', width=25, command=rechnen).pack()

erg=Message(root, text="0", aspect=200)
erg.pack()

Button(root, text='Ende', width=25, command=root.destroy).pack()

root.mainloop()

Faktorielle

Das Berechnen der Faktoriellen einer Zahl (n!) in Python.

# import math

# Eingabe der Zahl
print("Fakultät einer Zahl berechnen!")
zahl=input("Zahl eingeben: ")

# Initialisierung der Variablen
i=1
erg=1

# Eingabe in eine Ganzzahl konvertieren
try:
	zahl=int(zahl)
	# Prüfung ob wirklich eine Zahl eingegeben wurde
except ValueError:
	print("Sie haben keine Ganzzahl eingegeben!")
else:
        # Schleife für die Berechnung
        for i in range(zahl):
                erg = erg * (i+1)

print(zahl,"! =",erg)

print("Ende")

Heron Wurzelziehen

Das Heron Näherungsverfahren zum Ziehen einer Quadratwurzel.

# wurzel.py

a = float(input("Zu berechnende Quadratwurzel: "))
x = float(input("Startwert x1: "))

# float bedeutet, dass mit Kommazahlen gerechnet werden soll!  

print ("Iteration  Näherungswert")
print ("_________________________")   

for i in range(1,6):
  x = 0.5*(x+a/x)
  print ('   ',i,'    ',x)

Sortieralgorytmus

Ein einfacher Straight Selection Sortieralgorytmus in Python.


# Array K mit beliebig vielen Zahlen zum Sortieren
# Variable n = Anzahl der Elemente
K = [9,8,7,6]
n = len(K)

print ("Aufgabe: ", K)

# Variable j für den Index im Array beginnend mit 0 (erstes Element) daher 1 abziehen
j = n - 1
print(j,n)

while j > 1:

    # erstes Element mit Index 0 
    maxi = 0
    # zweites Element mit Index 1
    i = 1
    while i <= j:
        if K[i] > K[maxi]:
            maxi = i
        i = i + 1
    print (maxi, i, j)
    hilf = K[j]
    K[j] = K[maxi]
    K[maxi] = hilf
    j = j - 1
    print (K)

print ("Ergebnis: ", K)

Python DNS

Um in Python eine DNS Abfrage zu stellen, gibt es das Modul dnspython https://www.dnspython.org/

Nun bin ich über ein kleines Problem gestolpert – Fehlermeldung: no module named dns

Es gibt eine Reihen von Problemlösungen im Netz, aber keine funktionierte bei mir. Bis ich auf den Umstand gestoßen bin, dass Linux Case-Sensitiv ist und Windows nicht. Und da ich die Meldung unter besagten Windows System bekommen habe, wurde ich fündig.

Mit pip show dnspython kann man sich die Infos zum Paket ansehen. Mit pip list eine Liste aller installierten Pakete.

Name: dnspython
Version: 2.7.0
Summary: DNS toolkit
Home-page: https://www.dnspython.org
Author:
Author-email: Bob Halley <halley@dnspython.org>
License: ISC
Location: C:\Users\FranzStaffel\AppData\Local\Programs\Python\Python312\Lib\site-packages
Requires:
Required-by:

Nun geschwind in den Ordner der Pakete gewechselt und was findet man da (dir):

11.12.2024  13:05    <DIR>          DNS
11.12.2024  13:05    <DIR>          dnspython-2.7.0.dist-info

Siehe da, durch die Installation des Modules DNS gibt es einen Ordner mit Großbuchstaben. Und da Windows nicht Case-Sensitiv ist, kopiert er bei der Installation von dnspython alles in den DNS Ordner.

Kurzerhand dnspython wieder deinstalliert mit pip deinstall dnspython

Den Ordner DNS manuell gelöscht (da ich das Modul DNS ohnehin nicht mehr benötige) und dnspython wieder installiert

11.12.2024  13:05    <DIR>          dns
11.12.2024  13:05    <DIR>          dnspython-2.7.0.dist-info

Jetzt funktionieren auch die Programme mit dem import dns. Alles eine Frage der Groß- und Kleinschreibung.

Das war die Ursache bei mir, vielleicht hilft es bei dem einen oder anderen, seinen Fehler zu lokalisieren.

Einstellungen in der Mailbox vornehmem (Weiterleitungen, Autoantworten)

Folgende Adresse im Browser eingeben: https://www.staffel.at:8443

Anmeldemaske

Benutzername ist die Mailadresse. Das Kennwort sollte bekannt sein.

Hier gibt es nun die Möglichkeiten direkt zum Webmail zu kommen oder Einstellungen des Mailkontos zu ändern.

Weiterleitung

Sollen die Mails automatisch an eine andere Mailadresse weitergesendet werden, kann man diese hier definieren.

Weiterleitung

Autoantwort

Im Falle der Abwesenheit kann man hier eine automatische Antwort einstellen. Die Mails bleiben gespeichert und können danach noch abgerufen werden. Auch die Zeit des Ablaufs kann definiert werden.

Autoantwort

Kennwort ändern

Das Kennwort der Mailbox kann hier einfach geändert werden. Bedenken Sie allerdings, dass das Kennwort komplex sein soll, damit niemand in Ihre Mailbox hacken kann. Man kann sich auch eines generieren lassen, welches sehr sicher ist.

Kennwort

Sollten Sie das Kennwort mal vergessen haben, kontaktieren Sie mich direkt.

Mailbox einrichten

Da es immer wieder Probleme mit den alten Zertifikaten beim Mailempfang/-versand gab, habe ich die Mailzertifikate auf Let´s Encrypt umgestellt. Sollte daher jemand seine Mails verschlüsselt über meinen Server empfangen oder senden wollen, dann nimmt man folgende Einstellungen:

Posteingangsserver POP3:
Server: mail.staffel.at
SSL/TLS benutzen mit Port 995 (Standard)
Login (= Mailadresse) und Kennwort wie gehabt

Posteingangsserver IMAP:
Server: mail.staffel.at
SSL/TLS benutzen mit Port 993 (Standard)
Login (= Mailadresse) und Kennwort wie gehabt

Postausgangsserver SMTP:

Server: mail.staffel.at
SSL/TLS benutzen mit Port 465 (Standard)
Beim Versand gleiche Logindaten (Mailadresse und Kennwort) verwenden – Senderauthentifizierung

Nun sollten die voll qualifizierten Zertifikate für den verschlüsselten Mailverkehr laufend (alle 3 Monate) von Let´s Encrypt aktualisiert werden.

Hier zwei Screenshots für das Einrichten bei Thunderbird mit diesen Parametern. In anderen Programmen funktioniert es recht ähnlich (auch am Handy):

Empfang per IMAP:

Senden per SMTP:

Zertifikate testen

Im Zuge dieser ganzen Zertifikate-Geschichte, ist immer die Frage aufgetaucht, wie teste ich es eigentlich.

Wenn man eine Homepage mit zB Let´s Encrypt gesichert hat, dann kann man einfach einen der zahlreichen Onlinedienste verwenden. Einen guten Dienst mit vielen Tests findet man hier:

Qualys SSL Server Test https://www.ssllabs.com/ssltest/

Als Ergebnis findet man hier ein Rating, mit dem man gleich sieht, wo man steht. Auch Verbesserungsvorschläge mit Links gibt es dann.

Wenn man allerdings keine Homepage sonders zB IMAP-S, SMTP-S oder POP3-S testen möchte, dann kann man sich mit openssl behelfen. Findet man unter Linux auf der Shell oder man installiert es sich.

Unter Linux einfach folgenden Befehl eingeben:

openssl s_client -showcerts -connect mail.staffel.at:465
(in diesem Beispiel der SMTP-S Dienst von meinem Server)
-connect <Server-URL>:<Portnummer> für jeden beliebigen Server und Dienst

Man kann als Port auch 80 (http) nehmen, da findet sich in der Regel keines. Oder auch 443 (https), damit man die Zertifikatsinformationen vom Webserver sieht.