<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AnB-Networkz &#187; bash</title>
	<atom:link href="http://anb-networkz.de/tag/bash/feed/" rel="self" type="application/rss+xml" />
	<link>http://anb-networkz.de</link>
	<description>Die Farben der Technik</description>
	<lastBuildDate>Fri, 30 Dec 2011 19:59:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>&#8220;screen&#8221; Sitzung beim Login über SSH starten oder fortsetzen</title>
		<link>http://anb-networkz.de/2011/10/screen-sitzung-beim-login-uber-ssh-starten-oder-fortsetzen/</link>
		<comments>http://anb-networkz.de/2011/10/screen-sitzung-beim-login-uber-ssh-starten-oder-fortsetzen/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 13:22:00 +0000</pubDate>
		<dc:creator>Andre</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[bashrc]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[login]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[terminal]]></category>

		<guid isPermaLink="false">http://anb-networkz.de/?p=989</guid>
		<description><![CDATA[Screen, ein kleines Programm um mehrere virtuelle Terminals in einer bestehenden Sitzung zu starten ist gerade in Verbindung mit SSH sehr nützlich. Bricht zum Beispiel während der Installation von Updates die SSH Sitzung ab, läuft screen trotzdem weiter und kann &#8230; <a href="http://anb-networkz.de/2011/10/screen-sitzung-beim-login-uber-ssh-starten-oder-fortsetzen/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Screen, ein kleines Programm um mehrere virtuelle Terminals in einer bestehenden Sitzung zu starten ist gerade in Verbindung mit SSH sehr nützlich. Bricht zum Beispiel während der Installation von Updates die SSH Sitzung ab, läuft screen trotzdem weiter und kann nach dem Wiederaufbau der SSH Verbindung neu verbunden werden. Alle Prozesse innerhalb der screen Sitzung bzw. der im virtuellen VT100 Terminal gestarteten Shell laufen ohne Unterbrechung weiter.</p>
<p>Leider vergisst man meist bei Arbeiten &#8220;die mal schnell&#8221; erledigt werden sollten eine Screen-Sitzung z starten. Interessanterweise brechen auch genau dann immer die SSH Verbindungen ab. Murphy lässt grüßen <img src='http://anb-networkz.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Also sollte man nicht lange nachdenken ob man eine screen-Sitzung startet sondern sollte es einfach nur tun <img src='http://anb-networkz.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Und das am besten automatisch beim Anmelden über SSH.</p>
<p>Einige schreiben hier immer wieder sehr komplexe Scripte oder starten screen vom SSH Daemon. Ich persönlich finde das alles überflüssig. Eigentlich muss nur geprüft werden ob die Shell über SSH gestartet wurde und ob die aktuelle Shell gerade in einem Screen-Term läuft. Letzteres ist wichtig um keine Schleife zu verursachen.</p>
<p>Für screen selbst sollten noch die Parameter für UTF-8 (auf allen neueren Distributionen Standard) und das automatische Fortsetzen bereits bestehender Sitzungen hinzugefügt werden. Der Parameter x für MultiDisplay/MultiUser Mode ist auch ganz nützlich.</p>
<p>Soll doch mal eine Sitzung ohne screen gestartet werden, sollte dies ebenfalls berücksichtigt werden. Eine interessanterweise sehr einfache Methode (echo / sleep) habe ich neulich auf einer LAN-Party gesehen (Thx Outi) und auch gleich so übernommen.</p>
<p>Aber nun zum Script. Der folgende Code führt hinzugefügt an die bashrc des Benutzers (oder Systems) genau diese Schritte aus.</p>
<pre class="wp-code-highlight prettyprint">if [[ -e $SSH_TTY ]] &amp;&amp; [[ $TERM != screen ]]; then
        echo Starting or resuming screen session
        echo Press CTRL+C to cancel screen startup
        sleep 2
        screen -UxR;
fi</pre>
]]></content:encoded>
			<wfw:commentRss>http://anb-networkz.de/2011/10/screen-sitzung-beim-login-uber-ssh-starten-oder-fortsetzen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unterordner mit TAR differentiell sichern</title>
		<link>http://anb-networkz.de/2008/08/unterordner-mit-tar-differentiell-sichern/</link>
		<comments>http://anb-networkz.de/2008/08/unterordner-mit-tar-differentiell-sichern/#comments</comments>
		<pubDate>Sun, 24 Aug 2008 00:58:41 +0000</pubDate>
		<dc:creator>Andre</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ordner]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[Sicherung]]></category>
		<category><![CDATA[tar]]></category>

		<guid isPermaLink="false">http://anb-networkz.de/?p=83</guid>
		<description><![CDATA[Auf einem System mit mehreren Benutzern sollten die Basisordner der Benutzer regelmäßig gesichert werden. Eine vollständige Sicherung kann gerade bei großen Ordnern sehr schnell sehr viel Speicherplatz belegen. Für diesen Fall wurden ja auch Inkrementelle und Differentielle Sicherungen erfunden. Ich &#8230; <a href="http://anb-networkz.de/2008/08/unterordner-mit-tar-differentiell-sichern/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Auf einem System mit mehreren Benutzern sollten die Basisordner der Benutzer regelmäßig gesichert werden. Eine vollständige Sicherung kann gerade bei großen Ordnern sehr schnell sehr viel Speicherplatz belegen. Für diesen Fall wurden ja auch Inkrementelle und Differentielle Sicherungen erfunden. Ich habe ein Script geschrieben, das die Basisordner, wenn noch keine vollsicherung vorhanden ist, vollständig sichert. Alle folgenden Sicherungen erstellen nur eine Differenzsicherung zur letzten Vollsicherung. Im Moment überschreibt das Script die letzte Differentielle Sicherung, da diese in meiner Umgebung auf einem zentralem Server täglich auf Band gesichert wird. Bei Bedarf sollte man an die Sicherungen evt. noch das aktuelle Datum anhängen oder ein Archivupdate durchführen, um das überschreiben zu verhindern. Das <a href="http://anb-networkz.net/wp-content/uploads/2008/08/sicherungsh.gz">Sicherungsscript</a> gibt es hier zum Download.</p>
<p style="text-align: center;">
[download#6#image]</p>
]]></content:encoded>
			<wfw:commentRss>http://anb-networkz.de/2008/08/unterordner-mit-tar-differentiell-sichern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DD-WRT Firewall rekonfiguration per script</title>
		<link>http://anb-networkz.de/2008/01/dd-wrt-startscript/</link>
		<comments>http://anb-networkz.de/2008/01/dd-wrt-startscript/#comments</comments>
		<pubDate>Sun, 13 Jan 2008 15:27:41 +0000</pubDate>
		<dc:creator>Andre</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[dd-wrt]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[gäste]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://anb-networkz.de/?p=19</guid>
		<description><![CDATA[Gestern stand ich vor dem Problem einen Linksys WRT54GS Router als AP fÃ¼r ein Gast WLAN einzurichten. Es sollten nur bestimmte Ports und Protokolle zugelassen werden. Nichts leichter als das, dachte ich mir und wollte einfach Firewall-Regeln per Hand einfÃ¼gen. &#8230; <a href="http://anb-networkz.de/2008/01/dd-wrt-startscript/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Gestern stand ich vor dem Problem einen Linksys WRT54GS Router als AP fÃ¼r ein Gast WLAN einzurichten. Es sollten nur bestimmte Ports und Protokolle zugelassen werden. Nichts leichter als das, dachte ich mir und wollte einfach Firewall-Regeln per Hand einfÃ¼gen. In der Standart Firmware ist das aber sehr umstÃ¤ndlich wenn nicht sogar unmÃ¶glich. Also, dachte ich mir, ich flashe das GerÃ¤t mit DD-WRT und trage die erlaubten Dienste in der weboberflÃ¤che ein. Leider ist diese auch sehr beschrÃ¤nkt. Irgendwie hat aber das Regelwerk nicht richtig funktioniert. also habe ich in der OberflÃ¤che JFFS aktiviert, den SSH Dienst gestartet und unter /jffs/rules.sh ein Script mit ein Paar iptables aufrufen abgelegt.<span id="more-19"></span></p>
<p>#!/bin/sh<br />
# Firewall neu konfigurieren<br />
iptables -F<br />
iptables -A FORWARD -i br0 -i vlan1 -d 10.0.0.0/24 -j DROP<br />
iptables -A FORWARD -i br0 -p tcp &#8211;sport 1024: &#8211;dport 80 -m state &#8211;state NEW,ESTABLISHED -j ACCEPT<br />
iptables -A FORWARD -i br0 -p tcp &#8211;sport 1024: &#8211;dport 110 -m state &#8211;state NEW,ESTABLISHED -j ACCEPT<br />
iptables -A FORWARD -p tcp &#8211;dport 1024: -i vlan1 -m state &#8211;state ESTABLISHED,RELATED -j ACCEPT<br />
iptables -A FORWARD -p icmp -j ACCEPT<br />
iptables -P FORWARD DROP<br />
# webserver auf anderem Port starten<br />
kill $(pidof httpd)<br />
httpd -p 54321</p>
<p>Um das Script nun beim booten des WRT auszufÃ¼hren, muss es noch mit nvram set rc_costum=&#8221;/jffs/rules.sh&#8221; eingetragen werden.</p>
<p>Der Internet-Port ist mit einer Fritzbox verbunden, welche die Internetverbindung herstellt. diese liegt im Netzwerk 10.0.0.0/24. Der Linksys stellt DNS, DHCP und Routing-Dienste fÃ¼r das WLAN, welches im Netzwerk 10.0.1.0/24 liegt bereit. Somit kÃ¶nnen GÃ¤ste Webseiten aufrufen, Emails abrufen usw. aber keine ungewollten Dienste starten oder auf das Fritzbox-LAN zugreifen. ZusÃ¤tzlich mÃ¼ssen GÃ¤ste ein SchriftstÃ¼ck unterschreiben, in dem Sie sich verpflichten keine illegalen Dienste im Internet zu nutzen.</p>
<p>Falls es zu Problemen kommen sollte, kÃ¶nnte man zusÃ¤tzlich L7 regeln eintragen, um sicherzugehen das auf den erlaubten Ports auch wirklich die Protokolle verwendet werden, fÃ¼r die sie registriert sind. Da das aber sehr viel CPU-Last verursacht, werden diese erst bei Bedarf eingefÃ¼gt.</p>
]]></content:encoded>
			<wfw:commentRss>http://anb-networkz.de/2008/01/dd-wrt-startscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

