<?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>admirableadmin &#187; security</title>
	<atom:link href="http://admirableadmin.de/tag/security/feed" rel="self" type="application/rss+xml" />
	<link>http://admirableadmin.de</link>
	<description>&#34;Suchst du noch oder lebst du schon?&#34;</description>
	<lastBuildDate>Tue, 24 Jan 2012 23:45:26 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Pimp my Router mit DD-WRT</title>
		<link>http://admirableadmin.de/170/pimp-my-router-mit-dd-wrt</link>
		<comments>http://admirableadmin.de/170/pimp-my-router-mit-dd-wrt#comments</comments>
		<pubDate>Fri, 29 Oct 2010 13:16:54 +0000</pubDate>
		<dc:creator>admirableadmin</dc:creator>
				<category><![CDATA[de]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://admirableadmin.de/?p=170</guid>
		<description><![CDATA[Die Konfigurationsmöglichkeiten der DSL-Router im Heim und SOHO Bereich (Wikipedia) bieten über die Standardfunktionen hinaus kaum weitere Features die vom Hersteller nicht vorgesehen sind. Hier bietet DD-WRT Abhilfe. Was DD-WRT ist DD-WRT ist aus der von Linksys für ihre Router entwickelten Software entstanden, welche unter der GPL-Lizenz veröffentlicht wurde. Somit steht auch DD-WRT unter GPL [...]]]></description>
			<content:encoded><![CDATA[<p>Die Konfigurationsmöglichkeiten der DSL-Router im Heim und SOHO Bereich (<a href="http://de.wikipedia.org/wiki/Small_Office,_Home_Office" target="_blank">Wikipedia</a>) bieten über die Standardfunktionen hinaus kaum weitere Features die vom Hersteller nicht vorgesehen sind. Hier bietet <a href="http://www.dd-wrt.com/" target="_blank">DD-WRT</a> Abhilfe.</p>
<p><span id="more-170"></span></p>
<p><strong>Was DD-WRT ist</strong></p>
<p>DD-WRT ist aus der von Linksys für ihre Router entwickelten Software entstanden, welche unter der GPL-Lizenz veröffentlicht wurde. Somit steht auch DD-WRT unter GPL und kann kostenlos heruntergeladen und verwendet werden. Es gibt <a href="http://www.dd-wrt.com/wiki/index.php/What_is_DD-WRT%3F#File_Versions" target="_blank">unterschiedliche Versionen</a> die sich im Funktionsumfang und somit auch in der Dateigröße unterscheiden. Darum bitte zuerst einen Blick in die <a href="http://www.dd-wrt.com/wiki/index.php/Supported_Devices" target="_blank">unterstützten Hardware-Router</a> werfen um die passende Version zu finden. Dies ist abhängig von dem im Router verfügbarem Flash-Speicher. Es wird außerdem noch eine <a href="http://www.dd-wrt.com/wiki/index.php/What_is_DD-WRT%3F#Special_Versions" target="_blank">kostenpflichtige Spezialversion angeboten</a>.</p>
<p>Vor der Installation der neuen Firmware sollte zuerst eine <a href="http://www.dd-wrt.com/wiki/index.php/Installation" target="_self">passende Anleitung</a> gelesen werden. Hilfe kann man im <a href="http://www.dd-wrt.com/phpBB2/" target="_blank">DD-WRT Forum</a> finden. abhängig von der Hardware kann die Installation direkt über die bestehende Firmware installiert werden oder muss in zwei Schritten eingerichtet werden. Dazu wird erst die bestehende Firmware vom Router gelöscht und im zweiten Schritt über TFTP neu installiert. Die Standard-Zugangsdaten sind anschließend root/admin.</p>
<p><strong>Verbindungsprobleme beheben</strong></p>
<p>Je mehr Benutzer oder Programme gleichzeitig über den Router das Internet benutzen, umso mehr Verbindungen muss dieser gleichzeitig verarbeiten und halten. Falls es zu Verbindungsabbrüchen kommt, kann unter <em>Administration-&gt;Management</em> bei <em>IP-Filter-Einstellungen</em> die maximal mögliche Anzahl von 4096 bei <em>Maximale Ports</em> eingetragen werden.</p>
<p><strong>WLAN Reichweite erhöhen mit WDS</strong></p>
<p>Ein weiteres Feature von DD-WRT ist der sogenannte WDS-Modus (<a href="http://de.wikipedia.org/wiki/Wireless_Distribution_System">Wikipedia</a>). Hierüber kann über ein weiteren Router der WLAN-Bereich vergrößert werden. Der Vorteil von WDS gegenüber vielen einzelnen Access-Points ist, dass der Benutzer unterbrechungsfrei von einem Raum zum anderen gehen kann, ohne sich in ein anderes WLAN Einbuchen zu müssen, da überall die gleiche SSID verwendet wird. Für diesen zweiten (bzw. jeden weiteren) Router ist keine Verkabelung über ein LAN-Kabel nötig. Wichtig ist hierbei, dass die Router untereinander per WDS lediglich in einer gedachten Linie verbunden werden und nicht jeder Router mit jedem anderen Router eine WLAN-Verbindung aufbaut, da es sonst zu Routing-Problemen kommt da verschiedene Wege genommen werden könnten. Nachzulesen ist alles in der <a href="http://www.dd-wrt.com/wiki/index.php/WDS" target="_blank">Anleitung WDS im DD-WRT-Wiki</a>.</p>
<p><strong>mit DynDNS zum eigenen VPN-Server</strong></p>
<p>Ist DynDNS und der PPTP-Server konfiguriert kann man sich von unterwegs zum Büro oder Daheim ins Netzwerk verbinden und sogar mit der IP-Adresse vom DD-WRT-Router surfen, während die Verbindung verschlüsselt wird. Dazu wird neben der Konfiguration von DynDNS unter <em>Services-&gt;VPN</em> unter <em>PPTP-Server</em> die lokale IP des Routers bei <em>DNS1</em>, <em>WINS1</em> und <em>Server-IP</em> eintragen. Unter <em>Client-IP(s)</em> werden die zu vergebenden IP-Adressen hinterlegt, welche natürlich nicht im DHCP-Bereich liegen sollten, z.b. 192.168.0.100-150 um 50 VPN Adressen zu bekommen. Bei CHAP-Secrets werden die Zugangsdaten zeilenweise im Klartext hinterlegt in Form von <em>Username * Password *</em> &#8211; Wichtig ist hierbei die Reihenfolge einzuhalten und die Lehrzeichen vor und nach den Sternen bestehen zu lassen. Falls eine Verbindung von Außen nicht klappt, einfach unter <em>NAT / QoS</em> eine Port-Weiterleitung für 1723 auf die Router-IP selber einrichten.</p>
]]></content:encoded>
			<wfw:commentRss>http://admirableadmin.de/170/pimp-my-router-mit-dd-wrt/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FTP Benutzer mit Nur-Lese-Zugriff</title>
		<link>http://admirableadmin.de/146/ftp-benutzer-mit-nur-lese-zugriff</link>
		<comments>http://admirableadmin.de/146/ftp-benutzer-mit-nur-lese-zugriff#comments</comments>
		<pubDate>Fri, 29 May 2009 16:44:25 +0000</pubDate>
		<dc:creator>admirableadmin</dc:creator>
				<category><![CDATA[de]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://admirableadmin.de/?p=146</guid>
		<description><![CDATA[Bei jedem neu hinzugefügten FTP Benutzer in ProFTPD hat dieser vollen Zugriff auf sein Verzeichnis. Es ist jedoch möglich den Schreibzugriff zu unterbinden. Die Änderung wird direkt in der Haupt-Konfigurations-Datei /etc/proftpd.conf eingepflegt. Angenommen es soll einen Benutzer (ftp-write) mit vollem Zugriff geben und einen Benutzer (ftp-read) welcher lediglich Lesezugriff hat, dann wird die folgenden Konfiguration [...]]]></description>
			<content:encoded><![CDATA[<p>Bei jedem neu hinzugefügten FTP Benutzer in ProFTPD hat dieser vollen Zugriff auf sein Verzeichnis. Es ist jedoch möglich den Schreibzugriff zu unterbinden.</p>
<p><span id="more-146"></span>Die Änderung wird direkt in der Haupt-Konfigurations-Datei <em>/etc/proftpd.conf</em> eingepflegt. Angenommen es soll einen Benutzer (ftp-write) mit vollem Zugriff geben und einen Benutzer (ftp-read) welcher lediglich Lesezugriff hat, dann wird die folgenden Konfiguration übernommen:</p>
<p class="code">&lt;Directory /var/www/example.de/ftp-dir&gt;<br />
&lt;Limit WRITE&gt;<br />
AllowUser ftp-write<br />
DenyAll<br />
&lt;/Limit&gt;<br />
&lt;/Directory&gt;</p>
<p>Falls es keinen Benutzer mit Vollzugriff auf den Ordner geben soll, dann entfällt die Zeile &#8220;AllowUser ftp-write&#8221; und es wird lediglich ein Benutzer (ftp-read) angelegt.</p>
<p>Damit der Benutzer mit lesendem Zugriff nicht aus seinem Verzeichnis &#8220;ausbrechen&#8221;, also nicht eine Ebene höher springen kann, ist die folgende Option wichtig:
</p>
<p class="code">DefaultRoot ~</p>
<p class="favorite"><a href="http://www.proftpd.org/docs/" target="_blank">ProFTPD Handbuch</a></p>
]]></content:encoded>
			<wfw:commentRss>http://admirableadmin.de/146/ftp-benutzer-mit-nur-lese-zugriff/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rootkit suche mit Benachrichtigung</title>
		<link>http://admirableadmin.de/63/rootkit-suche-mit-benachrichtigung</link>
		<comments>http://admirableadmin.de/63/rootkit-suche-mit-benachrichtigung#comments</comments>
		<pubDate>Mon, 07 Jul 2008 17:55:21 +0000</pubDate>
		<dc:creator>admirableadmin</dc:creator>
				<category><![CDATA[de]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://admirableadmin.de/?p=63</guid>
		<description><![CDATA[Eine regelmäßige Überprüfung des Servers auf Rootkits (Wikipedia) und die sofortige Informierung der entsprechenden Personen, am besten per SMS, kann durchaus Sinn machen um Veränderungen am System frühzeitig erkennen zu können. Zuerst muss das Rootkitsuchprogramm installiert werden, das geht unter Debian per: apt-get install chkrootkit Anschließend wird ein Cronjob angelegt, welcher regelmäßig das System nach [...]]]></description>
			<content:encoded><![CDATA[<p>Eine regelmäßige Überprüfung des Servers auf Rootkits (<a href="http://de.wikipedia.org/wiki/Rootkit" target="_blank">Wikipedia</a>) und die sofortige Informierung der entsprechenden Personen, am besten per SMS, kann durchaus Sinn machen um Veränderungen am System frühzeitig erkennen zu können.</p>
<p><span id="more-63"></span></p>
<p>Zuerst muss das Rootkitsuchprogramm installiert werden, das geht unter Debian per:</p>
<p class="code">apt-get install chkrootkit</p>
<p>Anschließend wird ein Cronjob angelegt, welcher regelmäßig das System nach Rootkits prüft und im Fehlerfall eine Meldung sendet. Hier macht eine mail2sms Sinn. Der Cronjob unter /etc/cron.d/chkrootkit soll täglich um sechs Uhr laufen, sowohl morgens als auch abends:</p>
<p class="code">MAILTO=&#8221;mail2sms@example.com&#8221;<br />
0 6,18 * * *  root    /usr/sbin/chkrootkit -q</p>
<p>Leider kommt es dabei auch vermehrt zu Falschmeldungen, dass sollte bedacht werden, wenn pro SMS Kosten entstehen:</p>
<p class="code">You have     1 process hidden for readdir command<br />
You have     1 process hidden for ps command<br />
chkproc: Warning: Possible LKM Trojan installed</p>
<p>Diese Falschmeldungen entstehen wenn andere Programme während der Prüfroutine laufen und sich somit die Anzahl der laufenden Prozese ändert. Chkrootkit entnimmt diese Anzahl den Systemtools (welche ja bereits durch ein Rootkit ersetzt sein können) und vergleicht diese mit seinem eigenen Tools. Läuft beispielsweise ein anderer Cronjob zeitgleich, kann es somit beim Prüfen durch Chkrootkit auf versteckte Prozesse zu der Falschmeldung kommen.</p>
]]></content:encoded>
			<wfw:commentRss>http://admirableadmin.de/63/rootkit-suche-mit-benachrichtigung/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debian: Tägliche Infomail zu Updates</title>
		<link>http://admirableadmin.de/36/debian-tagliche-updates-per-mail</link>
		<comments>http://admirableadmin.de/36/debian-tagliche-updates-per-mail#comments</comments>
		<pubDate>Wed, 02 Jul 2008 17:20:53 +0000</pubDate>
		<dc:creator>admirableadmin</dc:creator>
				<category><![CDATA[de]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://admirableadmin.de/?p=36</guid>
		<description><![CDATA[Um täglich auf dem aktuellen Stand zu sein ob Debian Pakete aktualisiert wurden, lässt sich der folgende Cronjob einrichten. In der Datei /etc/cron.daily/apt-upgrade-simulation wird der folgende Inhalt hinterlegt: #!/bin/sh ( apt-get update -qq apt-get upgrade -s -V ) &#124; /usr/bin/mail -s &#8216;apt-get upgrade -s&#8217; root Die Mails werden auch hier wieder lokal an root zugestellt, [...]]]></description>
			<content:encoded><![CDATA[<p>Um täglich auf dem aktuellen Stand zu sein ob Debian Pakete aktualisiert wurden, lässt sich der folgende Cronjob einrichten.</p>
<p><span id="more-36"></span></p>
<p>In der Datei <em>/etc/cron.daily/apt-upgrade-simulation</em> wird der folgende Inhalt hinterlegt:</p>
<p class="code">#!/bin/sh<br />
(<br />
apt-get update -qq<br />
apt-get upgrade -s -V<br />
) | /usr/bin/mail -s &#8216;apt-get upgrade -s&#8217; root</p>
<p>Die Mails werden auch hier wieder lokal an root zugestellt, dies lässt sich jedoch einfach <a href="/35/" target="_self">umstellen</a>.</p>
<p>Das Einspielen der Updates muss man natürlich noch selber von Hand übernehmen &#8211; ein automatisches Update ist nicht zu empfehlen, da sonst keine Interaktionsmöglichkeit gegeben ist.</p>
]]></content:encoded>
			<wfw:commentRss>http://admirableadmin.de/36/debian-tagliche-updates-per-mail/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.3: Datenschutzproblem</title>
		<link>http://admirableadmin.de/24/wordpress-23-datenschutzproblem</link>
		<comments>http://admirableadmin.de/24/wordpress-23-datenschutzproblem#comments</comments>
		<pubDate>Sun, 30 Sep 2007 20:25:02 +0000</pubDate>
		<dc:creator>admirableadmin</dc:creator>
				<category><![CDATA[de]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://admirableadmin.de/24/</guid>
		<description><![CDATA[Mit der neuesten Version 2.3 von WordPress haben sich die Entwickler neben Sicherheitsupdates auch Gedanken dazu gemacht, dass der eigene Blog immer aktuell sein muss. Was die Benutzer der deutschen WordPress Version schon vom Update-Monitor her kennen, wurde nun auf die Plugins erweitert. Die Entwickler schreiben dazu im offiziellen Blog: Our new update notification lets [...]]]></description>
			<content:encoded><![CDATA[<p>Mit der neuesten Version 2.3 von <a href="http://wordpress.org/">WordPress</a> haben sich die Entwickler neben Sicherheitsupdates auch Gedanken dazu gemacht, dass der eigene Blog immer aktuell sein muss.</p>
<p><span id="more-24"></span></p>
<p>Was die Benutzer der <a href="http://wordpress-deutschland.org/">deutschen WordPress</a> Version schon  vom <a href="http://blogshop.de/">Update-Monitor</a> her kennen, wurde nun auf die Plugins erweitert. Die Entwickler schreiben dazu im <a href="http://wordpress.org/development/">offiziellen Blog</a>:</p>
<p class="yellowbox">Our new update notification lets you know when there is a new release of WordPress or when any of the plugins you use has an update available. It works by sending your blog URL, plugins, and version information to our new api.wordpress.org service which then compares it to the plugin database and tells you whats the latest and greatest you can use.</p>
<p>Was konkret bedeutet, dass die Übertragung der folgenden Daten ohne gewollte vorherige Zustimmung erfolgt: Die Versionsnummer der WordPress-Installation, alle installierten Plugins einschließlich Versionsnummer, eine Information darüber, welche von diesen Plugins aktiviert sind, die URL, unter der das Blog im Internet erreichbar ist.</p>
<p>Was umgangssprachlich als &#8220;telefoniert nach Hause&#8221;-Programmfunktion bekannt ist, lässt sich in diesem Fall auch gar nicht gewollt über die Oberfläche ausstellen. Was liegt also näher als die URL einfach zu blocken:</p>
<p class="code">iptables -A OUTPUT -d api.wordpress.org -j DROP</p>
<p>Wer will (oder muss, da der Blog auf einem gemieteten System läuft) kann sich auf mit einem Plugin behelfen:</p>
<p class="favorite"><a href="http://wordpress.org/extend/plugins/disable-wordpress-plugin-updates/">Disable WordPress Plugin Updates</a></p>
]]></content:encoded>
			<wfw:commentRss>http://admirableadmin.de/24/wordpress-23-datenschutzproblem/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SSH: Zugriff einschränken</title>
		<link>http://admirableadmin.de/13/ssh-zugriff-einschraenken</link>
		<comments>http://admirableadmin.de/13/ssh-zugriff-einschraenken#comments</comments>
		<pubDate>Thu, 05 Jul 2007 21:19:23 +0000</pubDate>
		<dc:creator>admirableadmin</dc:creator>
				<category><![CDATA[de]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://admirableadmin.de/13/</guid>
		<description><![CDATA[Ein richtiger Linux Root-Server wird anderes als ein Windows-System nicht per graphischer Oberfläche mit Maus gesteuert, sondern alles wird per Konsole über Tastatur mit Hilfe des Protokolls SSH gesteuert (bunte Weboberflächen können immer ein Sicherheitsrisiko bedeuten). Damit nur gewünschte Zugriffe auf den Server stattfinden muss die Standard-Konfiguration verändert werden. SSH (Wikipedia) ist ein Netzwerkprotokoll über [...]]]></description>
			<content:encoded><![CDATA[<p>Ein richtiger Linux Root-Server wird anderes als ein Windows-System nicht per graphischer Oberfläche mit Maus gesteuert, sondern alles wird per Konsole über Tastatur mit Hilfe des Protokolls SSH gesteuert (bunte Weboberflächen können immer ein Sicherheitsrisiko bedeuten). Damit nur gewünschte Zugriffe auf den Server stattfinden muss die Standard-Konfiguration verändert werden.</p>
<p><span id="more-13"></span></p>
<p>SSH (<a href="http://de.wikipedia.org/wiki/Secure_Shell" target="_blank">Wikipedia</a>) ist ein Netzwerkprotokoll über welches von extern verschlüsselt der Server gesteuert  werden kann und Daten ausgetauscht werden können.</p>
<p>Unter Windows ist ein SSH-Login mit <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/" target="_blank">PuTTY</a> (<a href="http://de.wikipedia.org/wiki/PuTTY" target="_blank">Wikipedia</a>) zur Konfiguration und das kopieren von Dateien mit <a href="http://winscp.net/eng/docs/lang:de" target="_blank">WinSCP</a> (<a href="http://de.wikipedia.org/wiki/WinSCP" target="_blank">Wikipedia</a>) möglich.</p>
<p>Sehr unsicher ist jedoch das verwenden eines Kennwortes für den direkten root-Zugriff (<a href="http://de.wikipedia.org/wiki/Root-Account" target="_blank">Wikipedia</a>) auf den Server. Darum wird zuerst ein eigenes Zertifikat erzeugt, dann der Zugriff eingeschränkt und anschließend das Passwort-Raten per sog. Brute-Force Angriff (<a href="http://de.wikipedia.org/wiki/Brute-Force-Angriff" target="_blank">Wikipedia</a>) blockiert.</p>
<p><em><strong>1.  eigenes Zertifikat erzeugen</strong></em></p>
<p>Mit dem Windows Programm <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank">PuTTYgen</a> kann ein eigener Schlüssel erzeugt werden. Der Vorteil ist, dass wenn mehrere Server zu betreuen sind, dass man diesen Schlüssel auf jedem Server ablegen kann (siehe dazu Punkt 2. Zugriff einschränken) und auch nicht jedesmal ein Kennwort eingeben muss. Denn dies wird von nun an mit dem zusätzlichen Programm <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank">Pageant</a> erledigt.</p>
<p>Das hier verwendete Prinzip setzt auf einem öffentlichen Schlüssel (<a href="http://de.wikipedia.org/wiki/%C3%96ffentlicher_Schl%C3%BCssel" target="_blank">Wipipedia</a>), der ohne Bedenken weitergegeben werden kann und einem privaten Schlüssel (<a href="http://de.wikipedia.org/wiki/Geheimer_Schl%C3%BCssel" target="_blank">Wikipedia</a>) auf, welcher mit einem Kennwort und vor fremdem Zugriff geschützt werden muss.</p>
<p>In PuTTYgen wird unter <em>Parameters</em> die Einstellung auf <em>SSH-2 DSA</em> gewählt und mit einem Klick auf <em>Generate</em> der Schlüssel erstellt. Nachdem Mausbewegungen für Zufallsparameter gesorgt haben kann ein Kommentar wie z.B. der eigene Name oder E-Mail Adresse eingegeben werden um später mehrere Schlüssel auseinander zu halten.</p>
<p>Für maximale Sicherheit muss der Schlüssel mit einer <em>Passphrase</em> geschützt werden. Im Unterschied zu einem Passwort kann hier auch ein ganzer Satz eingegeben werden.</p>
<p>Der <em>Public key</em> für OpenSSH wird aus dem Fenster rauskopiert und in einer Textdatei gespeichert. Der mit einer Passphrase geschützten <em>Private key</em> wird mit der Endung .ppk auf der Festplatte gespeichert. Dieser kann später mit Pageant geöffnt werden und verschwindet dann als Icon in der Statuszeile neben der Windows-Uhr, um dann Logins mit PuTTY oder WinSCP automatisch mit dem passenden Schlüssel zu versorgen und so einem Zugriff ohne eine nochmalige Passwort-Eingabe zu ermöglichen.</p>
<p><em><strong>2.  Zugriff einschränken</strong></em></p>
<p>Der eben eingerichteten und kopierten öffentlichen Schlüssel aus dem Feld <em>Public key</em> für OpenSSH wird nun auf dem Server eingerichtet. Dazu benötigt man zuerst einen neuen Benutzer, wenn man sich vorher nur über root verbunden hat.</p>
<p class="code">adduser &#8211;ingroup users &#8211;disabled-password BENUTZERNAME</p>
<p>im neu erstellten Home-Verzeichniss wird ein neuer Ordner <em>.ssh</em> erstellt und eine neue Datei <em>authorized_keys</em> erstellt und mit den richtigen Rechten versehen:</p>
<p class="code">mkdir /home/BENUTZERNAME/.ssh<br />
touch /home/BENUTZERNAME/.ssh/authorized_keys<br />
chown -R BENUTZERNAME:users /home/BENUTZERNAME/</p>
<p>In diese neue Datei <em>authorized_keys</em> wird der öffentliche Schlüssel kopiert.</p>
<p class="alert2">Während die Verbindung mit root-Rechten offen bleibt, wird versucht eine neue zusätzliche Verbindung zum Server aufzunehmen. Klappt alles hat man sich nicht selber ausgesperrt.</p>
<p>Nun ist es soweit den Root-Login auf den Server zu verbieten, in der Datei <em>/etc/ssh/sshd_config </em>wird folgende Einstellung vorgenommen:</p>
<p class="code">PermitRootLogin no</p>
<p>Somit wird in Zukunft, nach einem Neustart von sshd ein direkter Root-Zugriff verhindert:</p>
<p class="code">/etc/init.d/ssh restart</p>
<p>Befehle oder Aktionen, wie das einspielen der Sicherheitsupdates, erfordern natürlich auch weiterhin root-Rechte, die aber für normale Benutzer mit entsprechender Kenntnis des Root-Kennworts einfach zu erlangen sind:</p>
<p class="code">su -</p>
<p><em><strong>3. Brute-Force Angriffe blockieren</strong></em></p>
<p>beim verfolgen der Einträge in der Protokolldatei <em>/var/log/auth.log</em> fällt sofort auf, dass hier ständig probiert wird Benutzernamen und entsprechende Passwörter zu raten. Die passiert per Brute-Force und meist sogar ohne Wissen der Benutzer der IP. Dies kann sowohl ein von Viren befallener PC, oder ein gehackter Server sein. Da diese meist im Ausland beheimatet sind, ist eine Meldung oder Anzeige kaum erfolgreich.</p>
<p>Hier hilft nur den Server selber mit einer eigenen Firewall zu schützen. Das Tool <em>iptables</em> (<a href="http://de.wikipedia.org/wiki/Iptables" target="_blank">Wikipedia</a>) ist dafür ausgelegt, Pakete zu prüfen und entsprechend eingestellter Regeln zu verwerfen.</p>
<p>Wenn gewünscht ist den Angreifer auszubremsen und ihm so ein Passwort-Raten zu erschweren wird ein Shell-Script angelegt, z.b. <em>bfstopper.sh</em> und mit dem folgenden Inhalt befüllt:</p>
<p class="code">iptables -A INPUT -m state &#8211;state ESTABLISHED -j ACCEPT<br />
iptables -A INPUT -p tcp &#8211;dport ssh -m recent &#8211;update &#8211;seconds 600 -j DROP<br />
iptables -A INPUT -p tcp &#8211;dport ssh &#8211;tcp-flags syn,ack,rst syn -m recent &#8211;set -j ACCEPT</p>
<p>Somit werden alle wiederholten Verbindungen auf den SSH-Port 22 von der gleichen IP für 600 Sekunden, also 10 Minuten geblockt.</p>
<p>Alternativ gibt es natürlich weitere Methoden, wie das verlegen von SSH auf einen anderen Port, oder ein aktives Pflegen der hosts.allow und hosts.deny Dateien, oder durch das verwenden von <a href="http://www.fail2ban.org/" target="_blank">fail2ban</a>. Alles etwas überdimensioniert.</p>
<p class="favorite"><a href="http://www.openssh.org/de/index.html" target="_blank"> OpenSSH</a><br />
<a href="http://www.netfilter.org/projects/iptables/index.html" target="_blank">iptables</a></p>
]]></content:encoded>
			<wfw:commentRss>http://admirableadmin.de/13/ssh-zugriff-einschraenken/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PHP: Sicherheit mit suhosin</title>
		<link>http://admirableadmin.de/10/php-sicherheit-mit-suhosin</link>
		<comments>http://admirableadmin.de/10/php-sicherheit-mit-suhosin#comments</comments>
		<pubDate>Mon, 02 Jul 2007 21:32:37 +0000</pubDate>
		<dc:creator>admirableadmin</dc:creator>
				<category><![CDATA[de]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[dotdeb]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://admirableadmin.de/10/</guid>
		<description><![CDATA[Selbst geschriebene oder OpenSource PHP-Anwendungen, wie auch dieser Blog, sind immer nur begrenzt sicher. Immer wieder werden Sicherheitslücken gefunden und es beginnt ein Wettlauf im aktualisieren bevor jemand versucht diese Lücke anhand von einem fertigen Exploit (Wikipedia) auszuprobieren. Hier hilft vorbeugen. Suhosin ist ein umfangreiches Schutzsystem für die eigene PHP Installation. Entwickelt wurde dieser Patch, [...]]]></description>
			<content:encoded><![CDATA[<p>Selbst geschriebene oder OpenSource PHP-Anwendungen, wie auch dieser Blog, sind immer nur begrenzt sicher. Immer wieder werden Sicherheitslücken gefunden und es beginnt ein Wettlauf im aktualisieren bevor jemand versucht diese Lücke anhand von einem fertigen Exploit (<a href="http://de.wikipedia.org/wiki/Exploit" target="_blank">Wikipedia</a>) auszuprobieren.</p>
<p><span id="more-10"></span>Hier hilft vorbeugen. <a href="http://www.hardened-php.net/suhosin/index.html" target="_blank">Suhosin</a> ist ein umfangreiches Schutzsystem für die eigene PHP Installation. Entwickelt wurde dieser Patch, um Server und Benutzer sowohl vor bekannten und unbekannten Fehlern in PHP Anwendungen als auch im PHP Kern zu schützen. Suhosin besteht aus zwei voneinander unabhängigen Teilen, welche entweder einzeln oder auch kombiniert verwendet werden können.</p>
<p>Der erste Teil ist ein kleiner Patch im PHP Kern, der verschiedene Schutzfunktionen vor low-level Pufferüberläufen und zum Schutz von Format String Schwachstellen, die noch nicht beseitigt wurden oder konsstruktionsbedingt nicht vollständig geschützt werden können.</p>
<p>Der zweite Teil des Suhosin Schutzsystems ist eine mächtige, leistungsfähige PHP Erweiterung, die alle anderen Schutzfunktionen anbietet. Anders als der PHP Patch zur PHP Härtung ist Suhosin binär kompatibel zur PHP Installation und ist ein Mittel, die einer PHP Installation eine binäre Erweiterung beifügt, wie sie beispielsweise auch durch den ZendOptimizer hinzugefügt werden kann. Im weitesten Sinn ist Suhosin also eine Erweiterung für PHP.</p>
<p>Seit Debian <a href="http://packages.debian.org/stable/web/php5-suhosin" target="_blank">Etch ist Suhosin</a> auch als Paket erhältlich und muss also nicht selber kompiliert werden. Da jedoch Debian von Natur aus sehr konservativ gegenüber neuen Version ist, sollte man sich überlegen diese PHP-Pakete  von einer externen Quelle zu beziehen.</p>
<p>Hier bietet sich <a href="http://dotdeb.org/" target="_blank">dotdeb.org</a> an. Was genau in die <em>/etc/apt/sources.list</em> eingetragen werden muss um in den Genuss der aktuellsten Pakete zu kommen steht auf der Webseite. Zu Beachten ist jedoch das diese Pakete wie gesagt von einer externen Quelle stammen und Debian entsprechend vor der Installation warnt.</p>
<p class="code">apt-get install php5-suhosin</p>
<p>hiermit installieren wir suhosin. Da es kein gewöhnliches Plugin für Apache ist, muss es auch nicht erst aktiviert werden, sondern ist nach einem Neuladen der Konfiguration mit sofort aktiv:</p>
<p class="code">apache2ctl graceful</p>
<p>Überprüfen wir das Ganze indem wir eine <em>info.php</em> erstellen und die folgenden Zeilen einfügen:</p>
<p class="code"> &lt;?<br />
phpinfo();<br />
?&gt;</p>
<p>wir finden dort einen Eintrag wie</p>
<p class="code"> This server is protected with the Suhosin Patch 0.9.6.2<br />
Copyright (c) 2006 Hardened-PHP Project</p>
<p>im Error-Log von Apache finden wir nun immer die abgefangenen Anfragen, z.b.
</p>
<p class="code"> [Thu Jun 28 21:41:50 2007] [error] [client 12.23.34.45] ALERT &#8211; configured GET variable value length limit exceeded &#8211; dropped variable &#8216;content&#8217; (attacker &#8217;12.23.34.45&#8242;, file &#8216;/var/www/example.com/www/htdocs/(&#8230;).php&#8217;), referer: http://example.com/(&#8230;).php</p>
<p>Hier noch die Links:</p>
<p class="favorite"><a href="http://www.hardened-php.net/suhosin/index.html" target="_blank">Suhosin<br />
</a><a href="http://packages.debian.org/stable/web/php5-suhosin" target="_blank">Debain Suhosin</a><br />
<a href="http://dotdeb.org/" target="_blank">dotdeb</a></p>
]]></content:encoded>
			<wfw:commentRss>http://admirableadmin.de/10/php-sicherheit-mit-suhosin/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debian als E-Mailserver</title>
		<link>http://admirableadmin.de/4/debian-als-e-mailserver</link>
		<comments>http://admirableadmin.de/4/debian-als-e-mailserver#comments</comments>
		<pubDate>Tue, 26 Jun 2007 22:18:37 +0000</pubDate>
		<dc:creator>admirableadmin</dc:creator>
				<category><![CDATA[de]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[virus]]></category>

		<guid isPermaLink="false">http://admirableadmin.de/4</guid>
		<description><![CDATA[Ein eigener E-Mailserver (Wikipedia) ist unerlässlich wenn man selber E-Mails empfangen und versenden möchte, ohne von einem großen Provider abhängig zu sein. Nicht nur kann man so alles optimal auf seine eigenen Bedürfnisse einstellen, sondern kann auch weitergehend durch Verschlüsselung des E-Mailverkehrs über eigene Zertifikate seine Nachrichten schützen. E-Mail kann man gut mit Postkarten vergleichen, [...]]]></description>
			<content:encoded><![CDATA[<p>Ein eigener E-Mailserver (<a href="http://de.wikipedia.org/wiki/Mailserver" target="_blank">Wikipedia</a>) ist unerlässlich wenn man selber E-Mails empfangen und versenden möchte, ohne von einem großen Provider abhängig zu sein.</p>
<p><span id="more-4"></span>Nicht nur kann man so alles optimal auf seine eigenen Bedürfnisse einstellen, sondern kann auch weitergehend durch Verschlüsselung des E-Mailverkehrs über eigene Zertifikate seine Nachrichten schützen.</p>
<p>E-Mail kann man gut mit Postkarten vergleichen, jeder kann fremde Nachrichten mit minimal technischem Aufwand lesen und verändern. Wie man dies verhindern kann werde ich später erklären.</p>
<p>Als Betreuer oder Besitzers eines Servers ist man selber für alles verantwortlich was von und auf dem eigenen Server passiert. Somit ist es wichtig, dass kein Spam (<a href="http://de.wikipedia.org/wiki/Spam" target="_blank">Wikipedia</a>) direkt über den eigenen Server versandt wird.</p>
<p>Ein sogenanntes Offenes Relay (<a href="http://de.wikipedia.org/wiki/Offenes_Mail-Relay" target="_blank">Wikipedia</a>)  lässt sich einfach überprüfen (<a href="http://www.abuse.net/relay.html" target="_blank">abuse.net</a>), dabei werden verschiedene Formen des E-Mailversand geprüft und die Ergebnisse direkt angezeigt. Das Ganze lässt sich auch anonym testen.</p>
<p>Es gibt viele Anleitungen einen eigenen Mailserver zu erstellen. Erste Anlaufstelle für Debian-Benutzer wären eigentlich somit die Hilfestellungen von debianhowto.de (<a href="http://www.debianhowto.de/doku.php/de:howtos:sarge:exim4_vexim2_courier_mailman?do=backlink" target="_blank">de:howtos:sarge:exim4_vexim2_courier_mailman</a>) &#8211; der Autor verweist auf die Mailingliste, auf der jedoch nicht so erfreuliche Beträge zu finden sind (<a href="https://lists.debianhowto.de/pipermail/howto/2005-November/000197.html" target="_blank">lists.debianhowto.de</a>). Zusammengefast wird die Systematik von Debian zerstört, über welche sich neue Pakete installieren lassen und die Konfiguration standardisiert definiert wird. In der Liste wird sogar davon gesprochen, das Updates später unmöglich sind. Also muss etwas anderes her.</p>
<p>Nach einiger Suche hab ich für Debian eine gute Anleitung gefunden. Der Autor Christoph Haas stellt für Debian Sarge (<a href="http://workaround.org/articles/ispmail-sarge/index.shtml.de" target="_blank">deutsch</a> und <a href="http://workaround.org/articles/ispmail-sarge/index.shtml.en" target="_blank">englisch</a>) und Etch (<a href="http://workaround.org/articles/ispmail-etch/" target="_blank">englisch</a>) eine ausführliche Anleitung zur Verfügung, die auch sehr gut funktioniert. Verschiedene Domains mit einer Verwaltung über die Datenbank, Spam und Viren-Erkennung und Filterung sind mit eingeschlossen. Das Beste daran ist natürlich, dass alles gut erklärt wird wie es gemacht wird und warum.</p>
<p class="favorite"><a href="http://workaround.org/articles/ispmail-etch/" target="_blank">ISP-style Email Server with Debian-Etch and Postfix 2.3</a><br />
<a href="http://workaround.org/articles/ispmail-sarge/index.shtml.de" target="_blank">ISP-ähnlicher Email Service mit Debian-Sarge und Postfix 2.1</a><br />
<a href="http://workaround.org/articles/ispmail-sarge/index.shtml.en" target="_blank">ISP-style Email Service with Debian-Sarge and Postfix 2.1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://admirableadmin.de/4/debian-als-e-mailserver/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

