Putty, PuttyGen und WinSCP

Um die Putty-Sessions von einem PC auf den anderen zu übertragen, kann man mit regedit den folgenden Pfad ex- und importieren.

HKEY_CURRENT_USER\Software\SimonTatham

WinSCP speichert seine Sessions unter:

HKEY_CURRENT_USER\Software\Martin Prikryl

Achtung! Die Sessionnamen der neueren Versionen dürfen keine Slashes enthalten und ersetzen ein Leerzeichen durch die Kombination: %20

Java Properties

Eine Benutzerkonfiguration wird zum Beginn einer Anwendung geladen. Während ihres Laufs werden die verschiedensten Paramter geändert und zum Ende gespeichert.

Für den Zugriff auf die Konfiguration werden Pfad, Name, Parameter-Schlüssel und die Konfiguration (params) selbst global festgelegt.

[code lang=“java“]public static final String CONFIG_PATH =
System.getProperty(„user.home“) +
System.getProperty(„file.separator“) +
„.app“;

public static final String CONFIG_FILE =
„convert.properties“;

public static final String PARAM_XYZ = „param.xyz“;

private Properties params = new Properties();[/code]

Beim Start der Anwendung wird geprüft, ob das Verzeichnis für die Konfiguration vorhanden ist. Wenn dies nicht der Fall ist, wird das Verzeichnis angelegt und eine möglicherweise vorhandene Konfiguration eingelesen.

[code lang=“java“]try {

File confDir = new File(CONFIG_PATH);
if(! confDir.exists()) confDir.mkdir();

String config = CONFIG_PATH +
System.getProperty(„file.separator“) +
CONFIG_FILE;

File c = new File(config);

if( c.exists() ){
FileInputStream in = new FileInputStream(config);
params.load(in);
in.close();
}

} catch (Exception e) {
e.printStackTrace();
System.exit(-1);
}[/code]

Nach dem Laden hat man über den Parameter-Schlüssel Zugriff auf die Werte der Konfiguration. Ist ein Schlüssel nicht definiert, wird null geliefert.

[code lang=“java“]params.getProperty(PARAM_XYZ)[/code]

Geändert wird ein Parameter ebenfalls über seinen Schlüssel.

[code lang=“java“]params.setProperty(PARAM_XYZ, „abcd“);[/code]

Am Ende müssen alle aktuellen Werte gespeichert werden.

[code lang=“java“]try {
String config = CONFIG_PATH +
System.getProperty(„file.separator“) +
CONFIG_FILE;;

FileOutputStream out = new FileOutputStream(config);
properties.store(out, „Lokale Konfiguration“);
out.close();

} catch (Exception e) {
e.printStackTrace();

}[/code]

Beim Speichern ist zu beachten, das alle gewollten Möglichkeiten – das Programm zu Beenden – beachtet werden. So kommen in einem typischen GUI die Titelleiste, ein Menüeintrag und ein Toolbar-Button in Frage.

Xming

Bisher scheiterten die Versuche einen X-Server unter Windows zu nutzen am Preis oder schlicht an der Größe der Software-Pakete. Beispielsweise schien eine komplette Cygwin-Umgebung einzurichten doch etwas übertrieben, für die wenigen zu erwartenden Anwendungsfälle.

Der Open-Source X-Server Xming (basiert auf Cygwin) kommt aber als 2,1 MByte großes Installationspaket daher. Er besitze ein grafisches Interface mit dem man sich Xml-Dateien erstellen kann, die dann direkt mit einem Doppelklick gestartet werden können.

Screenshot Xming Tray Noch besser ist aber ein flexibles Tray-Icon, was man den eigenen Bedürfnissen anpassen kann.

Die Installation ist denkbar einfach. Nach dem Download führt man das Setup aus, an dessen Ende man die Verknüpfung der Dateiendung xlaunch mit Xming positiv bestätigen sollte. Zusätzlich steht ein Font-Paket zur Verfügung, was weitere Schriften installiert. Auch dieses wird einfach mit dem Setup ins selbe Verzeichnis wie Xming abgelegt (die Meldung, das das Verzeichnis schon existiert, ändert nichts an der Tatsache, das es das korrekte Zielverzeichnis für die Fonts ist).

Nach dem Start von Xming zeigt sich das Tray-Icon Icon Xming und symbolisiert die Betriebsbereitschaft des X-Servers.

Screenshot Putty X Wenn man nun eine Putty-Session startet, muss man lediglich das X11 forwarding aktivieren und als X display location den Wert „localhost:0.0“ hinterlegen. Startet man dann in der Putty-Konsole ein X-Programm (xterm, xcalc usw.), wird dessen Ausgabe auf dem Windows-PC dargestellt und alle Eingabe (Maus/Tastatur) zum Server übertragen.

Nun ist ein xterm nicht gerade spannend, wenn man mit einem Programm wie Putty arbeitet. Interessant wird die Sache, wenn man Tools wie Ethereal startet. Der folgende Screenshot zeigt neben einer Putty-Konsole ein Ethereal und die Werkzeuge redhat-config-bind sowie redhat-config-samba.

Screenshot Xming Desktop

Das zu Beginn gezeigte Kontextmenü vom Xming-Tray-Icon lässt sich erzeugen, in dem man die Datei Xmingrc anpasst. Diese sollte im Programm-Verzeichnis (in das man Xming installiert hat) liegen. Sie kann mit einem einfachen Texteditor angelegt und bearbeitet werden.

Da die gesamte Xming-Dokumentation sehr gut ist, beschränke ich mich hier auf ein kleines Beispiel:

# Xming Resource File
TRAYICON ",101"
menu kunde {
Bash execd "C:\putty -load session"
separator
User exec "C:\plink -load session redhat-config-user"
Bind exec "C:\plink -load session redhat-config-bind"
Samba exec "C:\plink -load session redhat-config-samba"
separator
Ethereal exec "C:\plink -load session ethereal"
}
menu putty {
Kunde MENU kunde
}
menu apps {
"Putty Key Generator" execd "C:\puttygen C:\key.ppk"
"Putty/Plink Session" menu putty
separator
"&Reload Xmingrc" reload
"Edit Xmingrc" execd "notepad C:\Programme\Xming\Xmingrc"
separator
}
menu aot {
"&Always on Top" alwaysontop
separator
}
RootMenu apps
DefaultSysMenu aot atstart
SilentExit
DEBUG "xmingrc to reread"

Die eingesetzten Programme Putty, Plink und Puttygen findet man hier. Putty und Plink erwarten nach dem Parameter load eine Session, die zuvor mit Putty konfiguriert und gespeichert wurde.

EPIC 2015

Das Internet verändert mit großen Schritten die Medienlandschaft. Der Film EPIC 2015 zeigt eine Vision für das Jahr 2015. Erschreckend sind die Paralellen zum aktuellen Geschehen. Bleibt die Hoffnung, das wir alle unsere Persönlichkeit nicht zu Gunsten einer unnützen Bequemlichkeit opfern. Aperto hat das Orginal des Films übersetzt und mit Hilfe der Akte X Stimme von Special Agent Dana Scully (Franziska Pigulla) synchronisiert. Mein Urteil – unbedingt anschauen!

OpenEMM

Die AGNITAS AG hat die Basisversion ihres E-Marketing Manager unter dem Namen OpenEMM als Open-Source (Mozilla Public License 1.1) freigegeben. Als Betriebssystem wird Red Hat Enterprise Linux 4 empfohlen. Die Software steht als RPM-Paket und als Tarball zur Verfügung. Die Software fügt sich nahtlos in die bestehende IT-Infrastruktur ein und setzt auf bewährten Open-Source-Produkten wie MySQL, Java, Tomcat und Sendmail auf.

Bedient wird OpenEMM über den Browser, wo auch die entsprechenden Mailinglisten angelegt werden. Damit Nutzer sich ein- und austragen können, bietet OpenEMM unterschiedliche Optionen. Formulare zum Einbinden in die eigenen Webseite sind bereits enthalten.

E-Mails lassen sich auch automatisch versenden, beispielsweise sobald eine Veranstaltung ansteht. Zum Erstellen der E-Mails ist ein HTML-Editor integriert und es werden Templates unterstützt, um den Inhalt vom Layout zu trennen. Dateianhänge lassen sich ebenso wie Bilder mitsenden. Neben einer Vorschaufunktion lassen sich auch Test-E-Mails versenden, bevor alle eingetragenen Empfänger die fertige E-Mail erhalten.

Zusätzlich bietet OpenEMM Echtzeitstatistiken, analysiert Klickraten, wie viele Nutzer sich austragen und Bounces. Diese Statistiken lassen sich auch exportieren, eine Übersicht über den kompletten Funktionsumfang findet sich auf der Projektseite.

Procmail und Vacation

Der Artikel bezieht sich auf ein Red Hat Enterprise Linux ES release 3. Ziel ist eine automatische Rückantwort (z.B. eine Urlaubsnotiz), die keinem der Absender mehr als einmal die Nachricht zukommen lässt.

Mit dem Kommando mkdir ~/.procmail legt man ein neues Verzeichnis an. Die Nachricht (welche automatisch versendet werden soll) schreibt man in die Datei ~/.procmail/vacation. In die Datei ~/.procmailrc werden dann folgende Einstellungen vorgenommen:

[code lang=“bash“]FORMAIL=/usr/bin/formail
SENDMAIL=/usr/lib/sendmail

# 1. Absender im Cache speichern
:0 Whc : $HOME/.procmail/vacation.lock
* !^X-Loop: someone@somewhere.net
* !^FROM_DAEMON
| $FORMAIL -trD 2048 $HOME/.procmail/vacation.cache

# 2. Nachricht senden (wenn Absender nicht im Cache)
:0 ehc
| ($FORMAIL -trA“Precedence: junk“ \
-A“From: Mein Name “ \
-A“X-Loop: meine@email.de“ \
-a“Subject: Re: your mail“ ; \
cat $HOME/.procmail/vacation \
) | $SENDMAIL -oi -t -fmeine@email.de[/code]

Squid und Active Directory

Die folgende Konfiguration bezieht sich auf eine Red Hat Enterprise Linux ES release 4 (Nahant Update 2) System und verwendet das Programm squid_ldap_auth, welches Bestandteil vom squid-2.5.STABLE6-3.4E.11 RPM-Paket ist.

External Auth-Programm in der /etc/squid/squid.conf definieren.

auth_param basic program
/usr/lib/squid/squid_ldap_auth
-h 1.2.3.4
-b "cn=Users,dc=btmx,dc=net"
-f userPrincipalName=%s@btmx.net
-D "cn=Administrator,cn=Users,dc=btmx,dc=net"
-w geheim

Die Option -h entspricht der Ip-Adresse des Active Directory-Servers. Die Optionen -D und -w entsprechen der Administrator Anmeldung. Mit -f wird das Attribut definiert, mit dessen Hilfe der Benutzer unterhalb von -b identifiziert wird.

Die korrekte Funktion der Konfigurationszeile kann leicht getestet werden, in dem der Befehl (ohne auth_param basic program) auf der Konsole ausgeführt wird.

Als Eingabe erwartet der Befehl den Usernamen und das Kennwort. Werden beide durch ein Leerzeichen getrennt und mit Return bestätigt, erhält man OK oder ERR als Antwort.

Die folgenden Einstellungen sind per Default gesetzt und beeinflussen das Verhalten der Authentifizierung. Die Beteutung und Wertebereiche sind in der /etc/squid/squid.conf dokumentiert.

auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

Eine Squid ACL für die berechtigten Benutzer definieren. Das Schlüsselwort REQUIRED besagt, das alle korrekt authentifizierten Benutzer von der ACL beschrieben werden.

In der /etc/squid/squid.conf finden sich Beispiele, wie der ACL auf wenige Benutzer beschränkt werden kann.

acl ad_user proxy_auth REQUIRED

Auf Grundlage der definierten ACL muss der Zugriff für die korrekt angemeldeten Benutzer erlaubt werden.

http_access allow ad_user

Zum Schluss müss der Squid mit dem Kommando /etc/init.d/squid restart neu gestartet werden.

Portable Software

Wenn man unterwegs ist, möchte man gerne die lieb gewonnenen Applikationen nutzen. Die portableapps.com laufen von einem USB-Stick oder einer externen Festplatte, wobei sie auf dem Rechner selber keinerlei Daten ablegen, sondern eben auf dem externen Device. Neben Anwendungen wie Firefox und Thunderbird steht beispielsweise auch OpenOffice oder GIMP zum Download bereit.

Weitere Links