commandlinefu - Code-Snippets für die shell

Wednesday, August 19th, 2009

Auf der Suche nach einem speziellen bash-Problem, bin ich auf eine sehr interessante Seite gestoßen:

http://www.commandlinefu.com/

Dort findet man zu jedem erdenklichen Thema UNIX-shell-Einzeiler. Das nette ist, das man sich recht einfach registrieren und dann selbst kleine Programme hinterlassen kann.

Das Projekt existiert zwar erst seit Anfang 2009, doch hält durch stetige Veröffentlichungen des Seiteneigners bereits knappe 3000 Einzeiler.

Leider fehlt noch eine Suchfunktion, was mich jetzt etwas davon abgehalten hat, direkt etwas einzutragen, denn ich will ja keine doppelten Einträge hervorrufen, aber ich werde dem Author mal bescheidsagen, dann hat sich das bestimmt schnell gelöst.

Keks hat mich darauf aufmerksam gemacht, dass es doch schon eine Suche gibt. Diese befindet sich direkt unter dem Titel… :roll:

Für jeden bash-”Programmierer” auf jedenfall merkenswert.

Gruß aus Sachsen

Bier

SCP - abgebrochene Downloads fortsetzen

Friday, January 30th, 2009

Schon mal versucht abgebrochene Downloads per scp wieder aufzunehmen? Geht nicht! Obwohl das bei großen Files durchaus sehr sinvoll sein könnte. Zum Glück gibt es ja reichlich Alternativen, rsync zum Beispiel.

Wenn ihr das mit scp machen wolltet:

1
scp zu_kopierende_file user@example.org:/pfad/oder/dateiname

So Macht macht ihr das mit rsync:

1
export RSYNC_RSH=ssh rsync --progress --partial zu_kopierende_file user@example.org:/pfad/oder/dateiname

Das “export RSYNC_RSH=ssh” bewirk, dass das an sich unverschlüsselte rsync Protokoll, über SSH getunnelt wird. Das ganze ist also prinzipiell genauso sicher wie SCP. Der Schalter “–progress”malt euch noch eine schöne Fortschrittleiste.

Toll was alles geht :dancing:

Ich wünsche euch allen ein Schönes Wochenende!

David

Spaß maximieren, alles durch SSH tunneln mit Tsocks

Wednesday, July 16th, 2008

Hier habe ich erklärt wie man durch einen SSH tunnel (mithilfe eines SOCKS Proxy) sicher (und bequem), über einen unsicheren Kanal, surfen kann.
Das ist ja schon mal ganz schick, solange sich unsere Applikationen Native mit einem SOCKS Proxy unterhalten können.
Ist das aber nicht der Fall ist das etwas doof.

Da kommt Tsocks ins Spiel.
Das, schon etwas ältere Programm (das letzte release ist vom 2002-10-23 21:02 ), basiert auf dem “shared library interceptor” konzept, das bedeutet vereinfacht das tsock die “connect()” C funktion abfängt und mit seiner Eigenen überschreibt.

Tsocks bestimmt dann anhand der Einstellungen in der “/etc/tsocks.conf” (bzw. wohin auch immer $TSOCKS_CONF_FILE zeigt) ob die Verbindung über den SOCKS Proxy geleitet werden soll, also über die Tsocks eigene “connect()” Funktion, oder über die “normale”, welche in <sys/socket.h> bereitgestellt wird.

Dadurch agiert Tsocks quasi als ein “Wrapper”.

Zum Verständnis mal ein Beispiel (ich gehe davon aus das ihr einen SSH SOCKS Tunnel anhand dem HOWTO auf Port 8080 aufgebaut habt, ansonsten natürlich anpassen!!):

Inhalt von /etc/tsocks.conf:

server = 127.0.0.1
server_port = 8080

Falls ihr kein root Zugriff habt, könnt ihr die ganze Schose natürlich auch in eurem HOME speichern.

export TSOCKS_CONF_FILE=$HOME/.tsocks.conf # Exportiere config file pfad, damit er dem Programm bekannt ist

Inhalt von $HOME/.tsocks.conf:

server = 127.0.0.1
server_port = 8080

Beispiel ohne Tsocks:

$ telnet ip.hansis-braindump.de 80
Trying 87.230.15.76...
Connected to ip.hansis-braindump.de.
Escape character is '^]'.
 
GET /index.php?X=123 HTTP/1.1
Host: ip.hansis-braindump.de
HTTP/1.1 200 OK
Date: Wed, 16 Jul 2008 10:17:48 GMT
Server: Apache
X-Powered-By: PHP/4.4.4-8+etch6
Content-Length: 40
Content-Type: text/html charset=ISO-8859-1
 
155.56.xx.xx
 
155.56.xx.xx

Hier komme ich also direkt!

Beispiel mit Tsocks:

$ tsocks telnet ip.hansis-braindump.de 80
Trying 87.230.15.76...
Connected to ip.hansis-braindump.de.
Escape character is '^]'.
 
GET /index.php?X=123 HTTP/1.1
Host: ip.hansis-braindump.de
HTTP/1.1 200 OK
Date: Wed, 16 Jul 2008 10:17:48 GMT
Server: Apache
X-Powered-By: PHP/4.4.4-8+etch6
Content-Length: 40
Content-Type: text/html charset=ISO-8859-1
 
87.230.15.76
 
hansis-braindump.de

Hier komme ich über hansis-braindump.de

Weitere Beispiele:

tsocks dog http://www.google.com
tsocks netcat example.com 80
tsocks irssi -c irc.freenode.net -p 6667

Viel Spass :daumenhoch:

Keks


Stoppt die Vorratsdatenspeicherung! Jetzt klicken & handeln!Willst du auch bei der Aktion teilnehmen? Hier findest du alle relevanten Infos und Materialien: