<?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>Neakros Blog &#187; Linux</title>
	<atom:link href="http://neakro.net/category/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://neakro.net</link>
	<description>Man nennt es neudeutsch 'bloggen'.</description>
	<lastBuildDate>Wed, 13 Jan 2010 21:26:44 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Bestimmte Benutzer in SSH chroot einsperren</title>
		<link>http://neakro.net/2009/12/bestimmte-benutzer-in-ssh-chroot-einsperren.html</link>
		<comments>http://neakro.net/2009/12/bestimmte-benutzer-in-ssh-chroot-einsperren.html#comments</comments>
		<pubDate>Sat, 12 Dec 2009 18:28:44 +0000</pubDate>
		<dc:creator>Neakro</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[chroot]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[SSH]]></category>

		<guid isPermaLink="false">http://neakro.net/?p=165</guid>
		<description><![CDATA[Eigentlich ist es keine Kunst, aber wenn man das erste Mal damit zu tun hat, wird man doch ziemlich erschlagen. Deshalb gibt es hier kleine Übersicht der Möglichkeiten und eine nähere Erläuterung meiner Lösung, die von hier abgeleitet wurde.
Alles gilt für Debian Lenny.
Grundsätzlich gibt es folgende Möglichkeiten:

SSH-Server in einer chroot-Umgebung auf einem eigenen Port lauschen [...]]]></description>
			<content:encoded><![CDATA[<p>Eigentlich ist es keine Kunst, aber wenn man das erste Mal damit zu tun hat, wird man doch ziemlich erschlagen. Deshalb gibt es hier kleine Übersicht der Möglichkeiten und eine nähere Erläuterung meiner Lösung, die von <a href="http://www.debian-administration.org/articles/590">hier</a> abgeleitet wurde.<br />
Alles gilt für <strong>Debian Lenny</strong>.</p>
<p>Grundsätzlich gibt es folgende Möglichkeiten:</p>
<ol>
<li>SSH-Server in einer chroot-Umgebung auf einem eigenen Port lauschen lassen.</li>
<li>Einen evtl. existierenden SSH-Server zu verwenden und nur bestimmte User per Konfigurationsdatei in eine chroot-Umgebung einzusperren.</li>
</ol>
<p><strong>Für 1.</strong> muss man eine relativ große chroot-Umgebung schaffen. D.h. man muss viele Konfigurationsdateien wie /etc/hostname, /etc/passwd, /etc/group etc. und natürlich auch sshd inklusive aller nötigen Bibliotheken in diese Umgebung kopieren. Außerdem muss man ein init-Skript anlegen, das den SSH-Server automatisch startet und /proc und einige /dev-Devices in die Umgebung mounten (u.a. devpts und ptmx).</p>
<p><strong>Bei 2.</strong> ist es einfacher. Seit Version 4.9 kann SSH unter Linux auch von sich aus (ausgewählte) Benutzer in eine chroot-Umgebung einsperren. Man kann sie sogar so zu &#8220;nur SFTP&#8221;-Benutzern degradieren. Dafür sind folgende Änderungen an der <em>/etc/ssh/sshd_config</em> nötig:</p>
<pre>Subsystem sftp internal-sftp</pre>
<p>Wenn man das normale SFTP-Subsystem benutzt kommt es zu Fehlern.</p>
<p>Nun konfiguriert man für spezielle Benutzer ein paar SSH-Optionen um:</p>
<pre>Match group sshchroot
         ChrootDirectory /home/%u
         X11Forwarding no
         AllowTcpForwarding no
         ForceCommand internal-sftp</pre>
<p>Die Option <em>ForceCommand</em> muss man auskommentieren, wenn die Benutzer auch Shell-Zugriff per SSH haben sollen.<br />
Das <em>%u</em> steht für den Usernamen. Das heißt, wenn ein Benutzer sich einloggt, ist er direkt in das Verzeichnis /home/&lt;username&gt; eingesperrt.</p>
<p>Anschließend fügt man die Benutzer zu der Gruppe <em>sshchroot</em> hinzu:</p>
<pre># adduser user sshchroot
# usermod -d / user
# chown root:root /home/user</pre>
<p>Es ist wichtig, dass das Wurzelverzeichnis der chroot-Umgebung dem Benutzer <em>root</em> gehört! Untergeordnete Verzeichnisse dürfen dann dem jeweiligen Benutzer gehören, in die er dann auch schreiben kann.</p>
<p>Wenn der Benutzer nun auch SSH-Zugang haben soll, muss eine passende chroot-Umgebung mit /bin/bash, /bin/ls etc. erstellt werden. Dies ist relativ einfach, aber je nach Umfang der chroot-Umgebung langwierig zu erstellen. Ganz am Anfang sollte man ein Homeverzeichnis unter /home/user/home/user für den Benutzer erstellen und es ihm als sein Heimatverzeichnis zuweisen:</p>
<pre># usermod -d /home/user user</pre>
<p>Am Beispiel von /bin/bash, welches dabei sein <strong>muss</strong>, erläutere ich das Vorgehen für das Hinzufügen von Programmen in die chroot-Umgebung. Natürlich sind Pfadangaben an den entsprechenden Stellen zu ersetzen.</p>
<ul>
<li>/bin/bash nach /home/user/bin/ kopieren</li>
<li><code>ldd /bin/bash</code> ausführen und die entsprechenden Bibliotheken nach /home/user/lib/ kopieren. Wichtig ist, dass /lib64/-Bibliotheken dann nach /home/user/lib64/ kopiert werden.</li>
<li>Konfigurationsdateien anlegen bzw. kopieren. Im Falle von /bin/bash ist das z.B. die Datei .bashrc im /home-Verzeichnis des Benutzers.</li>
</ul>
<p>Anschließend kann die Umgebung getestet werden:</p>
<pre># chroot /home/user</pre>
<p>Wenn nun ein Fehler erscheint sollte man seine Schritte nochmals überprüfen. Per <code>exit</code> verlässt man die chroot-Umgebung wieder.</p>
<p>Als letztes folgt der Test per SSH, wenn dieser erfolgreich verläuft hat man es geschafft und einen Benutzer erfolgreich eingesperrt.</p>
]]></content:encoded>
			<wfw:commentRss>http://neakro.net/2009/12/bestimmte-benutzer-in-ssh-chroot-einsperren.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Der eigene Firefox mit PGO</title>
		<link>http://neakro.net/2009/02/der-eigene-firefox-mit-pgo.html</link>
		<comments>http://neakro.net/2009/02/der-eigene-firefox-mit-pgo.html#comments</comments>
		<pubDate>Tue, 24 Feb 2009 01:44:28 +0000</pubDate>
		<dc:creator>Neakro</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[kompilieren]]></category>

		<guid isPermaLink="false">http://blog.neakro.net/?p=97</guid>
		<description><![CDATA[Seit Anfang an störte mich etwas am Firefox: seine Geschwindigkeit war im Vergleich zu Windows einfach schlecht. Was unter Windows flüssig lief, lief unter Linux ruckelnd und teilweise auch unbenutzbar langsam. Ich lebte 2 Jahre lang damit, hoffte auf eine Verbesserung in 2.0 und später dann in 3.0, aber sie blieb aus. Vor ein paar [...]]]></description>
			<content:encoded><![CDATA[<p>Seit Anfang an störte mich etwas am Firefox: seine Geschwindigkeit war im Vergleich zu Windows einfach schlecht. Was unter Windows flüssig lief, lief unter Linux ruckelnd und teilweise auch unbenutzbar langsam. Ich lebte 2 Jahre lang damit, hoffte auf eine Verbesserung in 2.0 und später dann in 3.0, aber sie blieb aus. Vor ein paar Tagen las ich durch Zufall dies: <a href="http://brainstorm.ubuntu.com/idea/18058/">Native Firefox on Ubuntu is even slower than on Wine</a>.</p>
<p>Die erste Lösung klang vielversprechend: &#8220;Compile Firefox with <a href="https://developer.mozilla.org/en/Building_with_Profile-Guided_Optimization">PGO</a> by default&#8221;. Gesagt getan. Nach einigen Sekunden Suchen, fand ich die Anleitungen im <a href="https://developer.mozilla.org/en/Linux_Build_Prerequisites">Mozilla Developer Wiki</a>.</p>
<p>Fix den Quellcode-Tarball für Firefox <a href="ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/">heruntergeladen</a> und entpackt. Laut des Wikis musste ich nun eine Datei mit dem Namen .mozconfig anlegen, um dort dann die Konfiguration für den Buildprozess festzulegen. Die Datei gehört in das root-Verzeichnis des Quellcodes. Mit einigen herausgesuchten Funktionen aus schon erstellten Firefoxen (about:buildconfig) erstellte ich nun folgende <em>.mozconfig</em>:</p>
<pre>. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/ff-opt
mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) $(MOZ_OBJDIR)/_profile/pgo/profileserver.py'
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --enable-optimize
ac_add_options --enable-update-packaging
</pre>
<p>Jetzt noch fix die <a href="https://developer.mozilla.org/en/Linux_Build_Prerequisites#Build_Tools">Abhängigkeiten</a> installiert und nun musste <em>make</em> ran:</p>
<pre>make -f client.mk profiledbuild</pre>
<p><strong>profiledbuild</strong> am Ende ist wichtig, sonst wird Firefox ganz normal kompiliert!</p>
<p>Nachdem ich ein paar Abhängigkeiten korrigiert hatte, die ich wohl übersehen hatte, hatte ich viel Zeit für andere Sachen, bis der Prozess beendet war. PGO baut Firefox zweimal, daher dauert es entsprechend länger bis man fertig ist.</p>
<p>Als schließlich <em>make</em> die Fertigstellung meldete war ich ganz begierig den Firefox zu testen. Schnell einen Tarball erstellt</p>
<pre>make -C ff-opt/browser/installer</pre>
<p>und ihn von <em>./ff-opt/dist</em> entpackt in ein eigenes Verzeichnis geschoben. Dann gestartet, und: Begeisterung pur! Er ist so schnell, das hätte ich mir nicht mal in meinen kühnsten Träumen vorstellen können. Die Geschwindigkeit ist bestimmt um den Faktor 3 höher als bei dem von Mozilla vorkompilierten Firefox.</p>
<p><strong>Fazit:</strong><br />
Jeder Linux-Firefox-Benutzer sollte es mal mit einem selbst kompilierten Firefox versuchen, wenn nicht schon seine Distribution einen mit PGO kompilierten anbietet.</p>
<p><strong>Anmerkung:</strong><br />
Sicherlich gibt es noch mehr Funktionen um auch das letzte Quant Geschwindigkeit herauszuholen, aber ich bin mit dem jetzigen Ergebnis so zufrieden, dass ich momentan nicht die Lust verspüre, nochmal 2 Stunden für 0,1% verbesserte Geschwindigkeit zu investieren.</p>
]]></content:encoded>
			<wfw:commentRss>http://neakro.net/2009/02/der-eigene-firefox-mit-pgo.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>VirtualBox &#8211; Guter Virtualisierer für dein Desktoplinux</title>
		<link>http://neakro.net/2007/12/virtualbox-guter-virtualisierer-fur-dein-desktoplinux.html</link>
		<comments>http://neakro.net/2007/12/virtualbox-guter-virtualisierer-fur-dein-desktoplinux.html#comments</comments>
		<pubDate>Mon, 17 Dec 2007 15:57:00 +0000</pubDate>
		<dc:creator>Neakro</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[VirtualBox]]></category>
		<category><![CDATA[Virtualisierung]]></category>

		<guid isPermaLink="false">http://blog.neakro.net/?p=44</guid>
		<description><![CDATA[Seit gestern habe ich VirtualBox für mich entdeckt. Virtualisierung ist kein neues Thema, aber erst seit kurzem ist es mit möglich diese auch zu betreiben. Diverse Linux-Distributionen und Windows XP laufen wunderbar und dank Guest-AddOns sogar schon beinahe wie nativ.
Manchmal vermisse ich bewährte Windowsprogramme unter Linux. WINE bringt leider in einigen Fällen nicht den gewünschten [...]]]></description>
			<content:encoded><![CDATA[<p>Seit gestern habe ich VirtualBox für mich entdeckt. Virtualisierung ist kein neues Thema, aber erst seit kurzem ist es mit möglich diese auch zu betreiben. Diverse Linux-Distributionen und Windows XP laufen wunderbar und dank Guest-AddOns sogar schon beinahe wie nativ.</p>
<p>Manchmal vermisse ich bewährte Windowsprogramme unter Linux. WINE bringt leider in einigen Fällen nicht den gewünschten Erfolg. Nun habe ich mich weiter umgesehen und bin in der c&#8217;t bei VirtualBox hängengeblieben. Mit gefällt das Programm auch. Einfache Installation und sehr einfache Bedienung. Als Testsystem musste Ubuntu 6.06 herhalten. Dies lief ohne Probleme sehr schnell. Trotz eingestellter 256MB RAM lief es flüssig und es gab nur bei großen Programmen wie OpenOffice Ruckler. So habe ich schon viele Systeme getestet und einige Linux-Distributionen ausprobiert (es ist trotzdem keine besser als Sidux ;D).</p>
<p>VirtualBox lohnt sich auf jeden Fall für Leute, die gerne an Betriebssystem herumspielen oder erst mal Programme ausprobieren wollen bevor sie sie aktiv auf dem Arbeitssystem installieren. Besonders durch das einfache Speichern des Zustandes sind VMs (virtuelle Maschinen) schnell gestartet und einsatzbereit. Und wenn etwas schief läuft kann man das OS zum letzten Sicherungspunkt zurückführen.</p>
<p><a href="http://www.virtualbox.org/">VirtualBox-Webseite</a><br />
<a href="http://www.innotek.de/">Innotek-Website (Hersteller)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://neakro.net/2007/12/virtualbox-guter-virtualisierer-fur-dein-desktoplinux.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Umstieg auf Sidux</title>
		<link>http://neakro.net/2007/10/umstieg-auf-sidux.html</link>
		<comments>http://neakro.net/2007/10/umstieg-auf-sidux.html#comments</comments>
		<pubDate>Thu, 04 Oct 2007 14:28:49 +0000</pubDate>
		<dc:creator>Neakro</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sidux]]></category>

		<guid isPermaLink="false">http://blog.neakro.net/?p=36</guid>
		<description><![CDATA[Vor kurzem bin ich von Kubuntu auf Sidux umgestiegen. Sidux hat eine wesentlich bessere Einbindung von GTK-Programmen in die KDE- bzw. Qt-Oberfläche. Zudem ist Sidux wesentlich schneller als Kubuntu. Dies mag an der kleineren Installation liegen.
Einige Programme, die man von Kubuntu gewöhnt war muss man hier erstmal nachinstallieren. Dabei kann man sich der Debian-Repositories bedienen, [...]]]></description>
			<content:encoded><![CDATA[<p>Vor kurzem bin ich von Kubuntu auf Sidux umgestiegen. Sidux hat eine wesentlich bessere Einbindung von GTK-Programmen in die KDE- bzw. Qt-Oberfläche. Zudem ist Sidux wesentlich schneller als Kubuntu. Dies mag an der kleineren Installation liegen.<br />
Einige Programme, die man von Kubuntu gewöhnt war muss man hier erstmal nachinstallieren. Dabei kann man sich der Debian-Repositories bedienen, die zusätzlich zu den Sidux-Quellen aktiviert sind, denn Sidux ist nichts anderes als die aktuelle Debian-Beta (Sid, deshalb Sidux). Dafür funktioniert aber alles super <img src='http://neakro.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<p>Manche Linuxkenner sollten sich Sidux mal anschauen, für Anfänger ist es aber nichts, da man schon einiges auf der Konsole erledigen muss, besonders, wenn der XServer mal nicht möchte. Zudem fehlen einige Programme, wie z.B. ein einfacher Rechner (den ich nicht benötige, da ich einen wesentlich besseren Taschenrechner habe <img src='http://neakro.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ). Im Vergleich zu Kubuntu kann man Sidux auch viel feiner konfigurieren (Gentoouser, jaja ihr könnt das noch besser <img src='http://neakro.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ), außerdem sieht es insgesamt runder aus.</p>
]]></content:encoded>
			<wfw:commentRss>http://neakro.net/2007/10/umstieg-auf-sidux.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->