Aufnehmen einer Terminal-Session

Mit dem Programm script kann man ein Protokoll einer Terminal-Sitzung anfertigen, um beispielsweise einen Installationsprozess zu dokumentieren. Um die Protokollierung zu starten, wird das Programm wie folgt aufgerufen:

$ script -t 2>~/term-session.time -a ~/term-session.script

Die Option -t gibt den zeitlichen Ablauf auf STDERR aus, das hier in eine Datei umgeleitet wird, und -a schreibt das Typescript in eine Datei. Beendet wird die Aufnahme mit CTRL-D oder indem auf der Eingabeaufforderung exit eingegeben wird.

Eine Wiedergabe des Scripts ist mit less -R möglich. Falls die Option -t von script benutzt wurde, kann das Programm scriptreplay verwendet werden, um die gesamte Sitzung wieder anzeigen zu lassen:

$ scriptreplay ~/term-session.time ~/term-session.script

Mit script lässt sich einfach eine Mitlesegelegenheit für einen zweiten Benutzer einrichten. Führt der erste Benutzer den Befehl `mkfifo /tmp/terminal-session; script -f /tmp/terminal-session` aus, kann der zweite Benutzer mit `cat /tmp/terminal-session` die Terminal-Sitzung des ersten Benutzers überwachen.

Eine E-Mail mit Telnet und SMTP AUTH relayen

Für das folgende Beispiel wird davon ausgegangen, dass der Mailserver PLAIN als Authentifizierungsmechanismus anbietet. Für SMTP AUTH müssen die Zugangsdaten als base64-kodierter String übergeben werden. Die Übersetzung generiert ein Perl-Einzeiler, wobei hier im Beispiel “username” als Benutzername und “password” als Passwort angegeben werden:

$ perl -MMIME::Base64 -e ‘print encode_base64(“username\0username\0password”);’
dXNlcm5hbWUAdXNlcm5hbWUAcGFzc3dvcmQ=

Mit dem ausgegebenen String kann nun die Authentifizierung durchgeführt werden.

$ telnet mail.example.com 25
220 mail.example.com ESMTP Postfix
EHLO client.example.com
250-mail.example.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH LOGIN PLAIN DIGEST-MD5 CRAM-MD5
250 8BITMIME
AUTH PLAIN dXNlcm5hbWUAdXNlcm5hbWUAcGFzc3dvcmQ=
235 Authentication successful
MAIL FROM:<sender@example.com>
250 Ok
RCPT TO:<recipient@example.com>
250 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Some text
.
250 Ok: queued as 123456789A
QUIT
221 Bye