<?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>Anthony Dahanne's blog &#187; proxy</title>
	<atom:link href="http://blog.dahanne.net/category/proxy/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.dahanne.net</link>
	<description>Open Source Software, Java, Ruby, Agility</description>
	<lastBuildDate>Tue, 20 Jul 2010 13:11:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Analyse de trames HTTP : les outils</title>
		<link>http://blog.dahanne.net/2009/12/10/analyse-de-trames-http-les-outils/</link>
		<comments>http://blog.dahanne.net/2009/12/10/analyse-de-trames-http-les-outils/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 09:31:01 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[outils]]></category>
		<category><![CDATA[proxy]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/?p=252</guid>
		<description><![CDATA[Régulièrement, je me trouve face au dilemme suivant : [...]]]></description>
			<content:encoded><![CDATA[<p>Régulièrement, je me trouve face au dilemme suivant :  &laquo;&nbsp;Mais qu&#8217;est ce que mon application a bien pu envoyer au serveur ?&nbsp;&raquo;<br />
Il existe des outils pour répondre à cette question , et voici ma sélection :</p>
<ul>
<li><a href="http://www.wireshark.org/">Wireshark </a>(anciennement ethereal) / Linux<br />
Cet outil, c&#8217;est le couteau suisse de l&#8217;analyse réseau; et pas simplement HTTP : il peut analyser les trames TCP, UDP et tout ce qu&#8217;il y a au dessus (HTTP, FTP, SMTP, etc&#8230;)</li>
<li><a href="http://www.pocketsoap.com/tcptrace/">TCPTrace</a> / Windows<br />
Comme son nom l&#8217;indique, il permet d&#8217;analyser les trames TCP : spécifier un port d&#8217;écoute sur votre machine locale, un port de destination, une hôte de destination, configurer votre client HTTP que vous désirez tester; et le tour est joué : tous vos échanges seront loggés !</li>
<li><a href="http://www.rexswain.com/httpview.html">HttpViewer</a> , en ligne<br />
Il ne permet que d&#8217;analyser les trames HTTP, mais son gros avantage c&#8217;est qu&#8217;il n&#8217;y a aucune installation à effectuer, c&#8217;est un outil en ligne !</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2009/12/10/analyse-de-trames-http-les-outils/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installation de CGI Proxy, solution de proxy http</title>
		<link>http://blog.dahanne.net/2007/03/09/installation-de-cgi-proxy-solution-de-proxy-http/</link>
		<comments>http://blog.dahanne.net/2007/03/09/installation-de-cgi-proxy-solution-de-proxy-http/#comments</comments>
		<pubDate>Thu, 08 Mar 2007 23:11:14 +0000</pubDate>
		<dc:creator>anthony.dahanne</dc:creator>
				<category><![CDATA[apache2]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[proxy]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.dahanne.net/2007/03/09/installation-de-cgi-proxy-solution-de-proxy-http/</guid>
		<description><![CDATA[Ce tutorial vous expliquera comment mettre en oeuvre de [...]]]></description>
			<content:encoded><![CDATA[<p>Ce tutorial vous expliquera comment mettre en oeuvre derrière Apache 2 le script CGI Proxy qui peut vous servir aussi bien à surfer anonyme (désactivation de scripts pendant la navigation), à accéder aux serveurs web de machine situées dans un réseau local, à contrer la censure &#8230;</p>
<h3>Installer simplement CGI Proxy (sans SSL)</h3>
<p>Tout d&#8217;abord, vous devez avoir les logiciels suivants installés sur votre machine:<br />
-un serveur sous Linux(çà devrait marcher sur tous les OS&#8230;)<br />
-Apache2 (un autre serveur web devrait faire l&#8217;affaire mais je n&#8217;ai pas testé&#8230;)<br />
-Perl<br />
Des commandes comme :<br />
<code>#apt-get install perl apache2</code><br />
devrait plus ou moins régler les choses sur Debian et les Debian-like&#8230;<br />
Pour la suite de l&#8217;article, je suppose que vous utilisez une distribution Debian Sarge.</p>
<p>Dirigez vous vers /etc/apache2/sites-available<br />
<code>#cd /etc/apache2/sites-available</code></p>
<p>Créez un nouveau site web, disons que vous avez le nom de domaine test.fr, créez ainsi le sous domaine cgiproxy.test.fr  :<br />
<code>#vim cgiproxy.test.fr</code></p>
<p>et insérez les lignes suivantes : </p>
<div class="code">
&lt;VirtualHost *&gt;<br />
    ServerAdmin admin@test.fr<br />
    DocumentRoot /var/www/cgiproxy.test.fr<br />
    ServerName cgiproxy.test.fr<br />
    ErrorLog /var/log/apache2/cgiproxy.test.fr.error.log<br />
    CustomLog /var/log/apache2/cgiproxy.test.fr.access.log common<br />
    AddHandler cgi-script .cgi<br />
&lt;Directory /var/www/cgiproxy.test.fr&gt;<br />
            AllowOverride FileInfo AuthConfig Limit<br />
            Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec<br />
            Order allow,deny<br />
            Allow from all<br />
            Options +ExecCGI<br />
&lt;/Directory&gt;<br />
&lt;/VirtualHost&gt;
</div>
<p>Pour que ce nouveau site soit fonctionne, n&#8217;oubliez de faire un lien symbolique de cette configuration dans /etc/apache2/sites-enabled :<br />
<code>#cd /etc/apache2/sites-enabled<br />
#ln -s /etc/apache2/sites-available/cgiproxy.test.fr</code></p>
<p>et de bien sûr créer le répertoire désigné dans votre configuration:<br />
<code>#mkdir /var/www/cgiproxy.test.fr</code></p>
<p>On redémarre Apache2 pour que la configuration soit prise en compte :<br />
<code>#/etc/init.d/apache2 restart</code></p>
<p><i>Petite note pour ceux qui n&#8217;ont pas de nom de domaine ou ne sachant pas comment créer un site sous Apache 2 :</i><br />
Vous avez sans doute dans /etc/apache2/sites-available un site (fichier de configuration) qui s&#8217;appelle 000-default, qui pointe vers des fichiers dans /var/www : vous pouvez aussi bien l&#8217;utiliser en adaptant cet article (chemins et sites)</p>
<p>Rendez vous dans /var/www/cgiproxy.test.fr et téléchargez le script CGI CGI Proxy :<br />
<code>#wget http://www.jmarshall.com/tools/cgiproxy/releases/cgiproxy.2.1beta15.tar.gz</code></p>
<p><i>Pour avoir la dernière version, veuillez consulter le site officiel <a href="http://www.jmarshall.com/tools/cgiproxy/">CGI Proxy</a></i></p>
<p>On décompresse l&#8217;archive ainsi récupérée :<br />
<code>#tar xvzf  cgiproxy.2.1beta15.tar.gz</code></p>
<p>Et si tout s&#8217;est bien passé, en dirigeant son navigateur vers http://cgiproxy.test.fr/nph-proxy.cgi on doit avoir le formulaire de saisie d&#8217;URL de CGI Proxy !<br />
Si toutefois cela ne fonctionne pas, n&#8217;hésitez pas à laisser un commentaire à cet article, mais commencez par vérifier :<br />
-que vos chemins sont bons<br />
-que vous n&#8217;avez pas renommé nph-proxy.cgi en quelquechose.cgi (il faut impérativement que le nom du fichier commence par nph-)<br />
-que le script est exécutable :<br />
<code>#chmod +x nph-proxy.cgi</code></p>
<h3>Installer CGI Proxy en mod ssl :</h3>
<p>Un peu plus difficile cette fois-ci, cette partie de l&#8217;article s&#8217;adresse aux personnes ayant déjà mis en place des sites Apache2 en mod_ssl.(un jour j&#8217;écrirai un article pour l&#8217;expliquer !).<br />
Pour faire simple, et rapide, inspirez vous de mon fichier de configuration :</p>
<div class="code">
&lt;VirtualHost *:443&gt;<br />
    ServerAdmin admin@cgiproxy.test.fr<br />
    DocumentRoot /var/www/cgiproxy.test.fr<br />
    ServerName cgiproxy.test.fr<br />
    ErrorLog /var/log/apache2/cgiproxy.test.fr.error.log<br />
    CustomLog /var/log/apache2/cgiproxy.test.fr.access.log common<br />
    AddHandler cgi-script .cgi<br />
 SSLEngine On<br />
 SSLCertificateFile /etc/apache2/ssl/apache.pem<br />
 SSLProxyEngine On<br />
&lt;Directory /var/www/cgiproxy.test.fr&gt;<br />
            AllowOverride FileInfo AuthConfig Limit<br />
            Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec<br />
            DirectoryIndex nph-protected.cgi<br />
            AuthUserFile /var/www/cgiproxy.test.fr/.htpasswd<br />
            AuthName &laquo;&nbsp;Welcome to Protected Site&nbsp;&raquo;<br />
            AuthType Basic<br />
            Require valid-user<br />
                 Options +ExecCGI<br />
&lt;/Directory&gt;<br />
&lt;/VirtualHost&gt;
</div>
<p>Un peu d&#8217;explication !<br />
<code>&lt;VirtualHost *:443&gt;</code><br />
vous permet de déclarer un serveur virtuel écoutant sur le port 443 (https par défaut)<br />
<code>AddHandler cgi-script .cgi</code><br />
permet à Apache 2 de lancer le moteur d&#8217;interpréteur de CGI lorsque les fichiers demandés terminent par .cgi<br />
<code>DirectoryIndex nph-protected.cgi</code><br />
indique à apache que le fichier index par défaut est : nph-protected.cgi (situé dans /var/www/cgiproxy.test.fr) lorsque qu&#8217;aucun nom de fichier est spécifié.<br />
<code> AuthUserFile</code><br />
permet de mettre en place une sécuristation HTTP Basic (login/mot de passe demandé pour accéder à la ressource)</p>
<h3>Liens</h3>
<p><a href="http://http://httpd.apache.org/docs/2.0/">Le site de documentation d&#8217;Apache2</a><br />
<a href="http://www.jmarshall.com/tools/cgiproxy/">Le site officiel de CGI Proxy</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dahanne.net/2007/03/09/installation-de-cgi-proxy-solution-de-proxy-http/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>
