﻿﻿{"id":2373,"date":"2026-02-23T10:25:00","date_gmt":"2026-02-23T09:25:00","guid":{"rendered":"https:\/\/elearningsamba.com\/index.php\/tunnelto-exposez-votre-serveur-local-avec-inspection-du-trafic\/"},"modified":"2026-02-23T10:25:00","modified_gmt":"2026-02-23T09:25:00","slug":"tunnelto-exposez-votre-serveur-local-avec-inspection-du-trafic","status":"publish","type":"page","link":"https:\/\/elearningsamba.com\/index.php\/tunnelto-exposez-votre-serveur-local-avec-inspection-du-trafic\/","title":{"rendered":"Tunnelto &#8211; Exposez votre serveur local avec inspection du trafic"},"content":{"rendered":"<p>Si vous avez d\u00e9j\u00e0 eu besoin de montrer une app en dev \u00e0 un client ou de tester un webhook Stripe sans vous farcir une config nginx, y&#8217;a de fortes chances que vous connaissiez<br \/>\n<a href=\"https:\/\/korben.info\/ngrok-creer-un-tunnel-pour-vos-applications-locale.html\">ngrok<\/a><br \/>\n.<\/p>\n<p>H\u00e9 bien<br \/>\n<a href=\"https:\/\/github.com\/agrinman\/tunnelto\">Tunnelto<\/a><br \/>\nfait sensiblement la m\u00eame chose, mais en Rust et avec un truc en plus qui fait la diff\u00e9rence : <strong>un dashboard d&#8217;introspection pour voir tout ce qui passe dans le tunnel.<\/strong><\/p>\n<p>Du coup, vous lancez une commande, vous r\u00e9cup\u00e9rez une URL publique genre <code>votresite.tunnelto.dev<\/code>, et hop, votre localhost devient accessible depuis n&#8217;importe o\u00f9. Et surtout, vous pouvez inspecter toutes les requ\u00eates HTTP qui transitent. Super utile quand vous d\u00e9buguez une API ou que vous essayez de comprendre pourquoi ce foutu webhook ne se d\u00e9clenche pas.<\/p>\n<p>Pour l&#8217;installer, plusieurs options s&#8217;offrent \u00e0 vous :<\/p>\n<p><strong>Sur macOS via Homebrew<\/strong> :<\/p>\n<div class=\"highlight\">\n<pre class=\"chroma\"><code class=\"language-fallback\" data-lang=\"fallback\"><span class=\"line\"><span class=\"cl\">brew install agrinman\/tap\/tunnelto\n<\/span><\/span><\/code><\/pre>\n<p><strong>Via Cargo<\/strong> :<\/p>\n<div class=\"highlight\">\n<pre class=\"chroma\"><code class=\"language-fallback\" data-lang=\"fallback\"><span class=\"line\"><span class=\"cl\">cargo install tunnelto\n<\/span><\/span><\/code><\/pre>\n<p>Et pour exposer votre app qui tourne sur le port 8000 :<\/p>\n<div class=\"highlight\">\n<pre class=\"chroma\"><code class=\"language-fallback\" data-lang=\"fallback\"><span class=\"line\"><span class=\"cl\">tunnelto --port 8000\n<\/span><\/span><\/code><\/pre>\n<p>C&#8217;est tout ! Le service vous file une URL avec un sous-domaine al\u00e9atoire. Mais si vous voulez quelque chose de plus m\u00e9morable, vous pouvez demander un sous-domaine custom :<\/p>\n<div class=\"highlight\">\n<pre class=\"chroma\"><code class=\"language-fallback\" data-lang=\"fallback\"><span class=\"line\"><span class=\"cl\">tunnelto --port 8000 --subdomain monprojet\n<\/span><\/span><\/code><\/pre>\n<p>Et vous obtenez <code>monprojet.tunnelto.dev<\/code>. Pas mal pour une d\u00e9mo client, non ?<\/p>\n<p>Bon, si vous avez suivi mes articles sur<br \/>\n<a href=\"https:\/\/korben.info\/bore-tunnel-tcp-rapide-leger-ports-locaux.html\">Bore<\/a><br \/>\nou<br \/>\n<a href=\"https:\/\/korben.info\/tunnl-tunnel-ssh-localhost-internet-ngrok.html\">Tunnl.gg<\/a><br \/>\n, vous vous demandez peut-\u00eatre la diff\u00e9rence. Bore est ultra-minimaliste, Tunnl.gg ne n\u00e9cessite m\u00eame pas de client \u00e0 installer&#8230; Tunnelto se situe entre les deux : plus complet que Bore avec son dashboard d&#8217;introspection, mais plus l\u00e9ger que ngrok avec son approche open source.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/korben.info\/cdn-cgi\/image\/width=1200,fit=scale-down,quality=90,f=avif\/tunnelto-exposer-localhost-alternative-ngrok\/tunnelto-exposer-localhost-alternative-ngrok-2.png\" alt=\"\" loading=\"lazy\"><\/p>\n<p>D&#8217;ailleurs, y&#8217;a un truc cool avec Tunnelto c&#8217;est que vous pouvez h\u00e9berger votre propre serveur si vous ne voulez pas d\u00e9pendre d&#8217;un service tiers. Pratique pour les entreprises qui veulent garder le contr\u00f4le sur leurs tunnels. Sous le capot, \u00e7a utilise \u00e9galement tokio pour l&#8217;async Rust, donc c&#8217;est rapide et \u00e7a consomme que dalle en ressources.<\/p>\n<p>Bref, si ngrok vous para\u00eet trop usine \u00e0 gaz et que Bore manque de fonctionnalit\u00e9s pour vous, Tunnelto fera bien le taf surtout avec son module d&#8217;inspection du trafic HTTP, qui fait la diff quand on d\u00e9bugue des int\u00e9grations&#8230;<\/p>\n<p>\n<a href=\"https:\/\/github.com\/agrinman\/tunnelto\">Source<\/a>\n<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Si vous avez d\u00e9j\u00e0 eu besoin de montrer une app en dev \u00e0 un client ou de tester un webhook Stripe sans vous farcir une config nginx, y&#8217;a de fortes chances que vous connaissiez ngrok . H\u00e9 bien Tunnelto fait sensiblement la m\u00eame chose, mais en Rust et avec un truc en plus qui fait la diff\u00e9rence : un dashboard d&#8217;introspection pour voir tout ce qui passe dans le tunnel. Du coup, vous lancez une commande, vous r\u00e9cup\u00e9rez une URL publique genre votresite.tunnelto.dev, et hop, votre localhost devient accessible depuis n&#8217;importe o\u00f9. Et surtout, vous pouvez inspecter toutes les requ\u00eates HTTP qui transitent. Super utile quand vous d\u00e9buguez une API ou que vous essayez de comprendre pourquoi ce foutu webhook ne se d\u00e9clenche pas. Pour l&#8217;installer, plusieurs options s&#8217;offrent \u00e0 vous : Sur macOS via Homebrew : brew install agrinman\/tap\/tunnelto Via Cargo : cargo install tunnelto Et pour exposer votre app qui tourne sur le port 8000 : tunnelto &#8211;port 8000 C&#8217;est tout ! Le service vous file une URL avec un sous-domaine al\u00e9atoire. Mais si vous voulez quelque chose de plus m\u00e9morable, vous pouvez demander un sous-domaine custom : tunnelto &#8211;port 8000 &#8211;subdomain monprojet Et vous obtenez monprojet.tunnelto.dev. Pas mal pour une d\u00e9mo client, non ? Bon, si vous avez suivi mes articles sur Bore ou Tunnl.gg , vous vous demandez peut-\u00eatre la diff\u00e9rence. Bore est ultra-minimaliste, Tunnl.gg ne n\u00e9cessite m\u00eame pas de client \u00e0 installer&#8230; Tunnelto se situe entre les deux : plus complet que Bore avec son dashboard d&#8217;introspection, mais plus l\u00e9ger que ngrok avec son approche open source. D&#8217;ailleurs, y&#8217;a un truc cool avec Tunnelto c&#8217;est que vous pouvez h\u00e9berger votre propre serveur si vous ne voulez pas d\u00e9pendre d&#8217;un service tiers. Pratique pour les entreprises qui veulent garder le contr\u00f4le sur leurs tunnels. Sous le capot, \u00e7a utilise \u00e9galement tokio pour l&#8217;async Rust, donc c&#8217;est rapide et \u00e7a consomme que dalle en ressources. Bref, si ngrok vous para\u00eet trop usine \u00e0 gaz et que Bore manque de fonctionnalit\u00e9s pour vous, Tunnelto fera bien le taf surtout avec son module d&#8217;inspection du trafic HTTP, qui fait la diff quand on d\u00e9bugue des int\u00e9grations&#8230; Source<\/p>\n","protected":false},"author":1,"featured_media":2374,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"give_campaign_id":0,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_kadence_starter_templates_imported_post":false,"footnotes":""},"class_list":["post-2373","page","type-page","status-publish","has-post-thumbnail","hentry"],"campaignId":"","_links":{"self":[{"href":"https:\/\/elearningsamba.com\/index.php\/wp-json\/wp\/v2\/pages\/2373","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/elearningsamba.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/elearningsamba.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/elearningsamba.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/elearningsamba.com\/index.php\/wp-json\/wp\/v2\/comments?post=2373"}],"version-history":[{"count":0,"href":"https:\/\/elearningsamba.com\/index.php\/wp-json\/wp\/v2\/pages\/2373\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/elearningsamba.com\/index.php\/wp-json\/wp\/v2\/media\/2374"}],"wp:attachment":[{"href":"https:\/\/elearningsamba.com\/index.php\/wp-json\/wp\/v2\/media?parent=2373"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}