<?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>Brainfact.de</title>
	<atom:link href="http://brainfact.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://brainfact.de</link>
	<description>Gaming, IT, Coding, Webdesign,...</description>
	<lastBuildDate>Thu, 03 Nov 2011 13:24:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Android &#8211; GPS Verwenden</title>
		<link>http://brainfact.de/35/android-gps-verwenden/</link>
		<comments>http://brainfact.de/35/android-gps-verwenden/#comments</comments>
		<pubDate>Thu, 03 Nov 2011 13:24:00 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[location]]></category>

		<guid isPermaLink="false">http://brainfact.de/?p=35</guid>
		<description><![CDATA[Heute möchte ich kurz vorstellen wie leicht man GPS in einer Android-APP verwenden kann. Zunächst ist wichtig, dass bei der APP die entsprechenden Permissions gesetzt sind, sodass sie auf das GPS zugreifen können. Dann habe ich mir folgende Klasse gebastelt: /** * Simple Android GPS Usage Example */ public class AndroidGPS &#123; // location manager [...]]]></description>
			<content:encoded><![CDATA[<p>Heute möchte ich kurz vorstellen wie leicht man GPS in einer Android-APP verwenden kann. Zunächst ist wichtig, dass bei der APP die entsprechenden Permissions gesetzt sind, sodass sie auf das GPS zugreifen können. Dann habe ich mir folgende Klasse gebastelt:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #008000; font-style: italic; font-weight: bold;">/**
 * Simple Android GPS Usage Example
 */</span>
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> AndroidGPS <span style="color: #009900;">&#123;</span>
	<span style="color: #666666; font-style: italic;">// location manager</span>
	<span style="color: #000000; font-weight: bold;">private</span> LocationManager lManager<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">// listener</span>
	<span style="color: #000000; font-weight: bold;">private</span> LocationListener lListener<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">// saves last location</span>
	<span style="color: #000000; font-weight: bold;">private</span> Location lastLocation<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">// update at least every x seconds</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">int</span> UPDATE_INTERVAL <span style="color: #339933;">=</span> <span style="color: #cc66cc;">20</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">// update at least every x meters</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">int</span> UPDATE_DIST <span style="color: #339933;">=</span> <span style="color: #cc66cc;">1000</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #008000; font-style: italic; font-weight: bold;">/**
	 * Startup GPS Tracking
	 */</span>
	<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> init<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #666666; font-style: italic;">// init location Updater</span>
		lManager <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span>LocationManager<span style="color: #009900;">&#41;</span> getSystemService<span style="color: #009900;">&#40;</span><span style="color: #003399;">Context</span>.<span style="color: #006633;">LOCATION_SERVICE</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		lListener <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> GPSLocListener<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
		lManager.<span style="color: #006633;">requestLocationUpdates</span><span style="color: #009900;">&#40;</span>LocationManager.<span style="color: #006633;">GPS_PROVIDER</span>, UPDATE_INTERVAL <span style="color: #339933;">*</span> <span style="color: #cc66cc;">1000</span>, UPDATE_DIST, lListener<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		saveLocation<span style="color: #009900;">&#40;</span>lManager.<span style="color: #006633;">getLastKnownLocation</span><span style="color: #009900;">&#40;</span>LocationManager.<span style="color: #006633;">GPS_PROVIDER</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #008000; font-style: italic; font-weight: bold;">/**
	 * Location manager class
	 */</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">final</span> <span style="color: #000000; font-weight: bold;">class</span> GPSLocListener <span style="color: #000000; font-weight: bold;">implements</span> LocationListener <span style="color: #009900;">&#123;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onLocationChanged<span style="color: #009900;">&#40;</span>Location location<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			saveLocation<span style="color: #009900;">&#40;</span>location<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onProviderDisabled<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> provider<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #666666; font-style: italic;">// </span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onProviderEnabled<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> provider<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #666666; font-style: italic;">//		</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000066; font-weight: bold;">void</span> onStatusChanged<span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> provider, <span style="color: #000066; font-weight: bold;">int</span> status, Bundle extras<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
			<span style="color: #666666; font-style: italic;">//</span>
		<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #008000; font-style: italic; font-weight: bold;">/**
	 * Save a location
	 */</span>
	<span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000066; font-weight: bold;">void</span> saveLocation<span style="color: #009900;">&#40;</span>Location l<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		lastLocation <span style="color: #339933;">=</span> l<span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #008000; font-style: italic; font-weight: bold;">/**
	 * Returns last known location
	 */</span>
	<span style="color: #000000; font-weight: bold;">public</span> Location getLocation<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
		<span style="color: #000000; font-weight: bold;">return</span> lastLocation<span style="color: #339933;">;</span>
	<span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Ist eigentlich ziemlich selbsterklärend. Diese Klasse zu verwenden ist nicht schwer:</p>

<div class="wp_syntax"><div class="code"><pre class="java" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">// Klasse initialisieren</span>
AndroidGPS g <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> AndroidGPS<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
g.<span style="color: #006633;">init</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">// in einem timer zB</span>
Location <span style="color: #339933;">=</span> g.<span style="color: #006633;">getLocation</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">// .. irgendwas damit machen</span></pre></div></div>

<p>Ich hoffe ihr könnt damit was anfangen <img src='http://brainfact.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://brainfact.de/35/android-gps-verwenden/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EA &#8211; Guter Wille aber dennoch keine besserung?</title>
		<link>http://brainfact.de/21/ea-guter-wille-aber-dennoch-keine-besserung/</link>
		<comments>http://brainfact.de/21/ea-guter-wille-aber-dennoch-keine-besserung/#comments</comments>
		<pubDate>Wed, 02 Nov 2011 20:53:08 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Gaming]]></category>
		<category><![CDATA[battlefield3]]></category>
		<category><![CDATA[datenklau]]></category>
		<category><![CDATA[ea]]></category>
		<category><![CDATA[eula]]></category>
		<category><![CDATA[origin]]></category>
		<category><![CDATA[spyware]]></category>

		<guid isPermaLink="false">http://brainfact.de/?p=21</guid>
		<description><![CDATA[Moin Moin, viele von euch haben in den letzten Tagen ja sicherlich den "Spyware Skandal" von Electronic Arts bzw. Origin mitbekommen. Denn durch die Bestätigung der EULA von Origin berechtigt man die Software quasie alles auf dem PC durchsuchen zu dürfen, und das macht das Programm auch.... Ein Arbeitskollege von mir hat sich das Ganze [...]]]></description>
			<content:encoded><![CDATA[<p>Moin Moin,</p>
<p>viele von euch haben in den letzten Tagen ja sicherlich den "Spyware Skandal" von Electronic Arts bzw. Origin mitbekommen. Denn durch die Bestätigung der EULA von Origin berechtigt man die Software quasie alles auf dem PC durchsuchen zu dürfen, und das macht das Programm auch.... Ein Arbeitskollege von mir hat sich das Ganze mal etwas näher angeschaut und überprüft was denn da so durchsucht wird. Darunter waren sämtliche private Dokumente (Word Dokumente, Bilder, Musik,....), das Ganze wurde nicht nur durchsucht sondern auch an Origin übertragen. Was der oberhammer an dem ganzen ist das dieser EULA Artikel nach Deutschem Recht eigentlich unzulässig ist, somit ist es meiner Meinung nach nur noch eine Frage der Zeit bis das Spiel komplett verboten wird oder EA ordentlich zur Kasse gebeten wird.</p>
<p>Diese "Daten Durchsucherrei" wirkt sich natürlich negativ auf die Meinung der Kunden aus. Und ich muss sagen ich habe selten ein Game mit so schlechten Amazon Rezensionen gesehen <img src='http://brainfact.de/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<div id="attachment_24" class="wp-caption aligncenter" style="width: 390px"><a href="http://brainfact.de/wp-content/uploads/2011/11/Rezensionen_Screen.png"><img class="size-full wp-image-24" title="Screenshot von den Amazon Rezensionen" src="http://brainfact.de/wp-content/uploads/2011/11/Rezensionen_Screen.png" alt="Screenshot von den Amazon Rezensionen" width="380" height="149" /></a><p class="wp-caption-text">Screenshot von den Amazon Rezensionen</p></div>
<p>EA hat versucht auf das ganze einzugehen allerdings ohne Erfolge. Die EULA wurde wieder abgeändert. Aber anstatt den Artikel raus zu nehmen hat man eigentlich nur hinzu ergänzt das es sich nicht um Spyware handeln würde, EA die Daten nur für interne Zwecke verwenden wird und die Daten keinesfalls an Dritte weitergibt. Es wahrscheinlich nur noch eine Frage der Zeit bis sich da eine gewisse Aktivistengruppe einschaltet.</p>
<p>Da fragt man sich, kann man sich dagegen wehren? Ja über Umwege aber nicht ganz... Und zwar kann man das ganze in einer Sandbox laufen lassen und die Dateizugriffsrechte so einschränken das nur noch auf die Spieledateien zugegriffen werden kann. Ich habe dazu einige Howtos gelesen aber bei keinem wurde die Registry richtig geschützt, dies kann man allerdings machen indem man das Game in der Sandbox über einen anderen User laufen lässt und die Berechtigungen in der Registry (regedit) für fast alles außer die EA Schlüssel auf Verweigern setzt (natürlich nur für den User).</p>
<p>Was ist eure Meinung zu dem ganzen? Teilt Sie uns doch über die Kommentare mit <img src='http://brainfact.de/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Hier noch zwei interessante Artikel auf Gamestar:</p>
<p><a href="http://www.gamestar.de/spiele/battlefield-3/artikel/analyse_zur_eula_von_ea_origin,45612,2561554.html" target="_blank">Analyse der Eula durch einen Rechtsanwalt</a></p>
<p><a href="http://www.gamestar.de/spiele/battlefield-3/downloads/battlefield_3,45612,2561710.html" target="_blank">Absichern gegen den Datenklau mit Sandboxie und Firewall Einstellungen</a></p>
<p>!Update:<br />
Die Gruppe Razor 1911 hat Origin ausgehebelt, man hat nun die Möglichkeit das Spiel mit einer modifizierten .exe zu starten mit der Origin umgangen werden kann (Quelle: <a href="http://www.gulli.com/news/17445-razor-1911-cracker-deaktivieren-eas-origin-dienst-2011-11-02?utm_source=twitterfeed&amp;utm_medium=twitter">gulli</a>)</p>
]]></content:encoded>
			<wfw:commentRss>http://brainfact.de/21/ea-guter-wille-aber-dennoch-keine-besserung/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C# StringBetween</title>
		<link>http://brainfact.de/19/c-stringbetween/</link>
		<comments>http://brainfact.de/19/c-stringbetween/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 05:37:03 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[between]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[datenverarbeitung]]></category>
		<category><![CDATA[string]]></category>

		<guid isPermaLink="false">http://brainfact.de/19/c-stringbetween/</guid>
		<description><![CDATA[Heute poste ich ein kurzes Code-Snippet, was vorallem für &#34;Quick&#38;Dirty&#34; Datenverarbeitung sehr nützlich sein kann – StringBetween. Man kann damit zwischen zwei gegeben String einen String extrahieren. Hier ein kleines Beispiel: data.json &#123; &#34;userid&#34;:23, &#34;points&#34;:1255125, // more data... &#34;premium&#34;:false &#125; Extract.cs String json = FileRead&#40;&#34;data.json&#34;&#41;; // won't work but just as example &#160; int userId [...]]]></description>
			<content:encoded><![CDATA[<p>Heute poste ich ein kurzes Code-Snippet, was vorallem für &quot;Quick&amp;Dirty&quot; Datenverarbeitung sehr nützlich sein kann – StringBetween. Man kann damit zwischen zwei gegeben String einen String extrahieren. Hier ein kleines Beispiel: </p>
<p><u>data.json</u></p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #009900;">&#123;</span>
    <span style="color: #3366CC;">&quot;userid&quot;</span><span style="color: #339933;">:</span><span style="color: #CC0000;">23</span><span style="color: #339933;">,</span>
    <span style="color: #3366CC;">&quot;points&quot;</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1255125</span><span style="color: #339933;">,</span>
    <span style="color: #006600; font-style: italic;">// more data...</span>
    <span style="color: #3366CC;">&quot;premium&quot;</span><span style="color: #339933;">:</span><span style="color: #003366; font-weight: bold;">false</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><u>Extract.cs</u></p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #6666cc; font-weight: bold;">String</span> json <span style="color: #008000;">=</span> FileRead<span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;data.json&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span> <span style="color: #008080; font-style: italic;">// won't work but just as example</span>
&nbsp;
<span style="color: #6666cc; font-weight: bold;">int</span> userId <span style="color: #008000;">=</span> <span style="color: #6666cc; font-weight: bold;">int</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Parse</span><span style="color: #008000;">&#40;</span>Between<span style="color: #008000;">&#40;</span>json, <span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>userid<span style="color: #008080; font-weight: bold;">\&quot;</span>:&quot;</span>, <span style="color: #666666;">&quot;,&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
<span style="color: #6666cc; font-weight: bold;">int</span> points <span style="color: #008000;">=</span> <span style="color: #6666cc; font-weight: bold;">int</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Parse</span><span style="color: #008000;">&#40;</span>Between<span style="color: #008000;">&#40;</span>json, <span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>points<span style="color: #008080; font-weight: bold;">\&quot;</span>:&quot;</span>, <span style="color: #666666;">&quot;,&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span></pre></div></div>

<p>Wie man sieht sehr einfach zu verwenden! Hier der Code der Between (=StringBetween) Funktion:</p>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">static</span> <span style="color: #6666cc; font-weight: bold;">string</span> Between<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">string</span> s, <span style="color: #6666cc; font-weight: bold;">String</span> Left, <span style="color: #6666cc; font-weight: bold;">String</span> Right, <span style="color: #6666cc; font-weight: bold;">int</span> Start <span style="color: #008000;">=</span> <span style="color: #FF0000;">0</span><span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #6666cc; font-weight: bold;">int</span> pos <span style="color: #008000;">=</span> s<span style="color: #008000;">.</span><span style="color: #0000FF;">IndexOf</span><span style="color: #008000;">&#40;</span>Left, Start<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>pos <span style="color: #008000;">==</span> <span style="color: #008000;">-</span><span style="color: #FF0000;">1</span><span style="color: #008000;">&#41;</span>
            <span style="color: #008000;">&#123;</span>
                <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #008000;">&amp;</span>quot<span style="color: #008000;">;&amp;</span>quot<span style="color: #008000;">;;</span>
            <span style="color: #008000;">&#125;</span>
&nbsp;
            pos <span style="color: #008000;">+=</span> Left<span style="color: #008000;">.</span><span style="color: #0000FF;">Length</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #6666cc; font-weight: bold;">int</span> pad <span style="color: #008000;">=</span> s<span style="color: #008000;">.</span><span style="color: #0000FF;">IndexOf</span><span style="color: #008000;">&#40;</span>Right, pos<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">return</span> s<span style="color: #008000;">.</span><span style="color: #0000FF;">Substring</span><span style="color: #008000;">&#40;</span>pos, pad <span style="color: #008000;">-</span> pos<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span></pre></div></div>

<p>Viel erfolg damit <img src='http://brainfact.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://brainfact.de/19/c-stringbetween/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Let&#8217;s play Company of Heroes</title>
		<link>http://brainfact.de/16/lets-play-company-of-heroes/</link>
		<comments>http://brainfact.de/16/lets-play-company-of-heroes/#comments</comments>
		<pubDate>Thu, 27 Oct 2011 16:52:42 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Gaming]]></category>
		<category><![CDATA[bkmod]]></category>
		<category><![CDATA[blitzkriegmod]]></category>
		<category><![CDATA[coh]]></category>
		<category><![CDATA[company]]></category>
		<category><![CDATA[die]]></category>
		<category><![CDATA[game]]></category>
		<category><![CDATA[gameplay]]></category>
		<category><![CDATA[gaming]]></category>
		<category><![CDATA[heroes]]></category>
		<category><![CDATA[lets]]></category>
		<category><![CDATA[letsplay]]></category>
		<category><![CDATA[of]]></category>
		<category><![CDATA[play]]></category>
		<category><![CDATA[relic]]></category>
		<category><![CDATA[schelde]]></category>
		<category><![CDATA[thq]]></category>

		<guid isPermaLink="false">http://brainfact.de/?p=16</guid>
		<description><![CDATA[Moin moin, vorgestern haben mein Clan Kamerad Nordic und Ich mal ein Let's play Company of Heroes Video gemacht. Wir haben die Map "Die Schelde" gespielt, das ganze dann in unserem Lieblingsmod dem Blitzkriegmod. Here we go:]]></description>
			<content:encoded><![CDATA[<p>Moin moin,<br />
vorgestern haben mein Clan Kamerad Nordic und Ich mal ein Let's play Company of Heroes Video gemacht. Wir haben die Map "Die Schelde" gespielt, das ganze dann in unserem Lieblingsmod dem <a href="http://www.blitzkrieg-mod.de/forums/index">Blitzkriegmod</a>.</p>
<p>Here we go:<br />
<iframe src="https://www.youtube.com/embed/fUQcVjGAjjk" frameborder="0" width="560" height="315"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://brainfact.de/16/lets-play-company-of-heroes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tinyproxy&#8211;Klein aber fein</title>
		<link>http://brainfact.de/14/tinyproxyklein-aber-fein/</link>
		<comments>http://brainfact.de/14/tinyproxyklein-aber-fein/#comments</comments>
		<pubDate>Thu, 27 Oct 2011 04:40:00 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[Server]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[proxy]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[tinyproxy]]></category>
		<category><![CDATA[tunnel]]></category>

		<guid isPermaLink="false">http://brainfact.de/14/tinyproxyklein-aber-fein/</guid>
		<description><![CDATA[Wer einen vServer oder einen Root-Server hat, kann diesen über einen SSH-Tunnel als Proxy benutzen um nicht auf direktem Weg mit dem Internet verbunden sein. Dies kann mehrere Vorteile haben, wie zum Beispiel wenn man seiner aktuellen WLan-Verbindung nicht vertraut (zB in einem Cafe), oder wenn man bewusst Logging in einem Netzwerk umgehen möchte (Schule, [...]]]></description>
			<content:encoded><![CDATA[<p>Wer einen vServer oder einen Root-Server hat, kann diesen über einen SSH-Tunnel als Proxy benutzen um nicht auf direktem Weg mit dem Internet verbunden sein. Dies kann mehrere Vorteile haben, wie zum Beispiel wenn man seiner aktuellen WLan-Verbindung nicht vertraut (zB in einem Cafe), oder wenn man bewusst Logging in einem Netzwerk umgehen möchte (Schule, Uni, …).</p>
<p>Ich habe eine Weile nach einem kleinen und einfachem Proxy gesucht, da mir OpenVPN einfach zu groß für meine Zwecke schien. Ich habe mich nach ein bisschen suchen dann für <strong>tinyproxy</strong> entschieden, und kann mich bis heute nicht über diese Entscheidung beklagen. Ich werde euch nun die Installation, sowie die Verwendung unter Windows erklären. Die nachfolgende Anleitung ist für <strong>Ubuntu</strong> geschrieben, sollte jedoch auch auf Debian Servern funktionieren.</p>
<p>Zuerst muss man sich per <em>ssh</em> (als <u>root</u>) mit seinem Server verbinden. Hierzu empfehle ich <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank">Putty</a>. (Dies wird zum Verbinden zum Proxy ebenfalls gebraucht.) Sobald man verbunden ist, muss tinyproxy erstmal installiert werden:</p>
<blockquote><p>apt-get install tinyproxy</p>
</blockquote>
<p>Sollte die Installation fehlschlagen, ist ggf ein <em>apt-get update</em> nötig. Dann sollte es aber klappen! Nun muss der Proxy erstmal konfiguriert werden. Ich verwende zum Bearbeiten <em>vim</em>, es funktioniert aber auch mit jedem anderen Editor (vi, nano, gedit, …).</p>
<blockquote><p>vim /etc/tinyproxy/tinyproxy.conf</p>
</blockquote>
<p>Ganz oben kann man erstmal festlegen, unter welchem Benutzer der Proxy laufen soll. Die Standartwerte <em>User nobody</em> und <em>Group nogroup</em> können einfach so gelassen werden. Wichtig ist aber nun, den Listen-Port für den Proxy einzustellen:</p>
<blockquote><p>Port 5050</p>
</blockquote>
<p>Ich habe meinen Port auf 5050 gestellt, ihr könnt aber einen beliebigen Port wählen. Dabei muss man jedoch unbedingt darauf achten, keinen Standartport zu blockieren!</p>
<p>Jetzt sollte man die <em>Listen</em> Einstellung auf <em>Localhost</em> stellen, um Verbindungen von außerhalb erstmal zu unterbinden (tinyproxy bietet kein auth-modul):</p>
<blockquote><p>Listen 127.0.0.1</p>
</blockquote>
<p>Die <em>Bind</em> Einstellung kann man auskommentieren. Das Timeout für Connections sollte man zwischen 400 und 800 Sekunden setzen, ist aber wenn man den Proxy als einziger verwendet keine Wichtige Einstellung.</p>
<blockquote><p>Timeout 800</p>
</blockquote>
<p>Nun kann man Error-Files einstellen, das braucht man meiner Meinung nach aber nicht. Die Stat-File und die Logfile Settings kann man konfigurieren (an/aus stellen, …) – sie sollten aber schon sinnvoll eingestellt sein.</p>
<p>Nun kommt wieder eine wichtige Einstellung <strong>XTinyproxy</strong>. Diese unbedingt auskommentieren! Ansonsten leitet der Proxy eure eigentliche IP weiter. </p>
<p>Die Einstellungen MaxClients, MinSpareServers und MaxSpareServers, StartServers und MaxRequestsPerChild würde ich für einen einzigen Benutzer wie folgt einstellen:</p>
<blockquote><p>MaxClients 20</p>
<p>MinSpareServers 5</p>
<p>MaxSpareServers 10</p>
<p>StartServers 2</p>
<p>MaxRequestsPerChild 0</p>
</blockquote>
<p>Jetzt kommt ein wichtiger Teil – die Zugangskontrolle. Da wir die Verbindung zum Proxy per SSH-Tunnel aufbauen wollen, erlauben wir nur Lokale Verbindungen:</p>
<blockquote><p>Allow 127.0.0.1</p>
</blockquote>
<p>Nun kommen Einstellungen zum Filtern und Anonyme Verbindungen, diese kann man aber so lassen.</p>
<p>Zuletzt kann man noch Einstellen, welche Outgoing-Ports der Proxy unterstützen soll. Port 80 ist immer erlaubt (HTTP), Port 443 &amp; 563 (HTTPS) sind bereits in der Config Datei eingetragen. Wer zB FTP noch hinzufügen mag, könnte noch Port 21 eintragen:</p>
<blockquote><p>ConnectPort 443</p>
<p>ConnectPort 563</p>
<p>ConnectPort 21</p>
</blockquote>
<p>Das war’s auch schon mit dem Konfigurieren. Datei speichern und tinyproxy neustarten:</p>
<blockquote><p>/etc/init.d/tinyproxy stop</p>
<p>/etc/init.d/tinyproxy start</p>
</blockquote>
<p>Jetzt läuft der Proxy auf dem Server. Nun brauchen wir nur noch unseren SSH Tunnel einrichten, und dann können wir schon über den Proxy surfen! Dazu starten wir <strong>Putty</strong> (siehe oben) erneut. Unter Host-Name wieder den Server, unter Port 22 (SSH). Nun klicken wir links unter “Connection” auf “SSH” und dann auf “Tunnels”. Hier tragen wir unter “Add new forwarded port:” folgendes Einstellungen ein: </p>
<blockquote><p>Source-Port: 5050</p>
<p>Destination: localhost:5050</p>
<p>[X] Local</p>
<p>[X] Auto</p>
</blockquote>
<p>Dann auf “Add” klicken. Jetzt wieder Links zurück auf “Session” drücken, dann auf “Open” klicken. Dann wie gewohnt die SSH-Logindaten eingeben. Jetzt steht auch der SSH-Tunnel! Nun muss dieser noch bei Firefox unter Proxy-Einstellungen eingetragen werden. Dazu klicken wir auf “Einstellungen” &gt; “Erweitert” &gt; “Netzwerk” &gt; “Festlegen wie sich Firefox mit dem Internet verbindet”. Dann “Manuelle Proxy-Konfiguration” wählen, einen Hacken bei “Für alle Protokolle diesen Proxy Server verwenden” und bei HTTP-Proxy <em>localhost </em>und Port <em>5050</em> einstellen. Mit OK bestätigen. Das wars!</p>
<p>Unter <a href="http://www.wieistmeineip.de/" target="_blank">Wie Ist Meine Ip.de</a> kann man jetzt nachprüfen, ob man wirklich die IP von seinem Server hat – und per Wireshark kann man sich selbst Packet-Sniffen und nur noch Verschlüsselte SSH-Verbindungen sehen, keine HTTP Requests mehr! <img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smiley" src="http://brainfact.de/wp-content/uploads/2011/10/wlEmoticon-smile.png" /></p>
]]></content:encoded>
			<wfw:commentRss>http://brainfact.de/14/tinyproxyklein-aber-fein/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;Rebranding&#8221; &#8211; AgrafixBlog2.0</title>
		<link>http://brainfact.de/9/rebranding-agrafixblog2-0/</link>
		<comments>http://brainfact.de/9/rebranding-agrafixblog2-0/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 23:37:54 +0000</pubDate>
		<dc:creator>alex</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Der Blog selber]]></category>
		<category><![CDATA[agrafixblog]]></category>
		<category><![CDATA[neustart]]></category>
		<category><![CDATA[rebranding]]></category>

		<guid isPermaLink="false">http://brainfact.de/?p=9</guid>
		<description><![CDATA[Liebe Lieser, wir haben uns heute entschieden den alten AgrafixBlog Beiseite zu legen um für unser neues Blog-Projekt "brainFact" den Weg frei zu schaufeln. Die größte Änderung ist eigentlich der Name des Blogs - die Thematik "IT/Gaming/Programmieren/Reviews" werden wir vorerst beibehalten. Die Autoren (Eric und ich, Alex) bleiben Euch natürlich auch erhalten! Wir werden uns [...]]]></description>
			<content:encoded><![CDATA[<p>Liebe Lieser,</p>
<p>wir haben uns heute entschieden den alten <a href="http://blog.agrafix.net" title="Agrafix Webdesign Blog" target="_blank">AgrafixBlog</a> Beiseite zu legen um für unser neues Blog-Projekt "brainFact" den Weg frei zu schaufeln. Die größte Änderung ist eigentlich der Name des Blogs - die Thematik "IT/Gaming/Programmieren/Reviews" werden wir vorerst beibehalten. Die Autoren (Eric und ich, Alex) bleiben Euch natürlich auch erhalten! </p>
<p>Wir werden uns bemühen etwa 4-5 Beiträge pro Woche zu posten, das heißt es sollte sich lohen täglich vorbei zu schauen! Außerdem könnt ihr euch über <a href="http://twitter.com/FactDE" title="@FactDe" target="_blank">Twitter @FactDE</a> oder <a href="https://www.facebook.com/pages/Brainfactde/115201838590057" title="Facebook BrainFactDe" target="_blank">Facebook BrainFactDe</a> auf dem Laufenden halten.</p>
<p>Wir wünschen Euch viel Spaß beim Lesen,</p>
<p>Eric &#038; Alex<br />
(buster &#038; agrafix)</p>
]]></content:encoded>
			<wfw:commentRss>http://brainfact.de/9/rebranding-agrafixblog2-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

