Zwingender monatlicher Login bei DynDNS.org automatisieren (Auto Login Script)

Einführung Seit kurzer Zeit muss man sich, damit man seinen Hostnamen nicht verliert, jeden Monat im Account von DynDNS.org einloggen. Mit einem einfachen Skript und einem Crontab Eintrag lässt sich das automatisieren. Automatisch einloggen Folgendes Skript automatisiert das Login im Account von DynDNS.org. Man muss nur noch den Usernamen und das Passwort eintragen. #!/usr/bin/env bash # # dyndnslogin - Automate login to prevent account expiration # ######################################################################## # DynDNS Settings (default-value, overwrite with $1 and $2) # If you have special chars in your password, you need to urlencode: # python -c "from urllib.parse import quote; # print(quote('your password', safe=''))" DEFAULT_USERNAME="username" DEFAULT_PASSWORD="password" # Import settings from /etc/ddclient.conf if available DDCONF="/etc/ddclient.conf" if [ -r "$DDCONF" ] && grep -q "^server=members.dyndns.org" "$DDCONF" then DEFAULT_USERNAME="`awk -F= '/^login=/{ print $2 }' $DDCONF`" DEFAULT_PASSWORD="`awk -F= '/^password=/{ print $2 }' $DDCONF`" fi USERNAME=${1:-$DEFAULT_USERNAME} PASSWORD=${2:-$DEFAULT_PASSWORD} PROGNAME=dyndnslogin COOKIE=`mktemp --tmpdir="/tmp" -t ${PROGNAME}_cookie_XXXXX` OUTPUT=`mktemp --tmpdir="/tmp" -t ${PROGNAME}_output_XXXXX` USERAGENT="Mozilla/5.0" MULTIFORM=`curl -s -A $USERAGENT -c $COOKIE https://account.dyn.com \ | awk -F\' '/multiform/{ print $6 }'` curl -s --location -A "$USERAGENT" -b $COOKIE -c $COOKIE -o $OUTPUT \ --data-urlencode "username=$USERNAME&password=$PASSWORD&iov_id=&submit=Log+in&multiform=$MULTIFORM" \ https://account.dyn.com/ if grep -i -E "(Welcome|Hi).*$USERNAME" $OUTPUT > /dev/null 2>&1 then echo Login successful else echo Login failed FAILED="true" fi rm $COOKIE rm $OUTPUT if [ "$FAILED" = "true" ] then exit 1 fi Nach dem Ausführen erhält man die Rückmeldung, ob das Login funktioniert hat oder nicht. ...

23.05.2013 · 2 min · Emanuel Duss

Den Computer als Wecker benutzen

Einführung Damit ich am Morgen von passender Musik geweckt werde, habe ich mir ein Skript geschrieben, welches mein Notebook in einen Wecker verwandelt. So stelle ich normalerweise den Notebook vor dem Schlafen gehen in den Sleep-Modus, welcher 30 Minuten Musik abspielt und danach in den Stanbdy fährt. Am Morgen schaltet mein Notebook automatisch zur eingestellten Weckzeit ein und spielt die Musik weiter. So starte ich meist gut in den Tag. Hier beschreibe ich, wie ich das gemacht habe. ...

30.03.2013 · 5 min · Emanuel Duss

Mehrere Terminalfenster verwalten mit tmux (vs. screen)

Einführung Mit tmux kann man wie mit screen mehrere Terminalfenster innerhalb einer Konsole verwalten. tmux hat jedoch ein paar Vorteile gegenüber dem Klassiker screen. Vorteile von tmux gegenüber screen Fenster können auch vertikal gesplittet werden Visuelle Benachrichtigung bei Aktivitäten aus anderem Fenster Mehr Konfigurationsoptionen Einfachere Konfiguration als (vgl. hardstatusstring von screen) Innerhalt tmux kann man zwischen mehreren Sessions wechseln (Client-Server Prinzip) Gut Skriptbar (von der Shell aus) Mehrere Buffer für Kopieren/Einfügen Fensternamen passen sich dynamisch den aufgerufenen Programmen an Fenster können verschoben und vertauscht awerden Konfiguration während dem laufenden Betrieb ändern und neu laden Programme wie less, welche normalerweise die Konsole wieder leeren, werden auch geleert Noch aktiv unter Entwicklung Konfiguration tmux wird mit der Konfigurationsdatei ~/.tmux.conf konfiguriert. ...

09.03.2013 · 4 min · Emanuel Duss

Befehle beim Systemstart ausführen unter Arch Linux mit systemd

Einführung Seit Arch Linux komplett auf systemd umgestellt hat, gibt es die Datei /etc/rc.local nicht mehr. Will man trotzdem Befehle direkt beim Systemstart ausführen, kann man sich einen systemd Service schreiben. Service schreiben Services unter systemd sind viel einfacher aufgebaut, als die Startskripte unter SysVinit. Die Services (egal ob aktiviert oder nicht), liegen im Verzeichnis /lib/systemd/system/. Dort kann man seine Services erstellen: $ sudo vi /lib/systemd/system/disablebluetooth.service Ein simpler Service, welcher ein Befehl ausführt, der im Target multi-user (entspricht etwa dem Runlevel 2 unter SysVinit) geladen wird, sieht so aus: ...

28.02.2013 · 2 min · Emanuel Duss

Meine Konfigurationsdatei für screen (~/.screenrc)

Einführung Mit screen kann man mehrere Fenster innerhalb eines Terminals verwalten. In der Standardkonfiguration ist screen jedoch nicht optimal für das tägliche Arbeiten konfiguriert. Ich habe screen so eingerichtet, dass z. B. die Willkommensnachricht nicht erscheint und dass am unteren Bildschirmrand eine Leiste mit allen offenen Fenster angezeigt wird. Konfiguration Mit der Datei .screenrc, welche im Homeverzeichnis liegt, kann screen konfiguriert werden. Die meisten Optionen sind selbsterklärend, deshalb werde ich nicht auf alle eingehen. Die Optionen sind in der Manpage von screen zu sehen, welche man mit man screen aufrufen kann. ...

20.02.2013 · 2 min · Emanuel Duss
×