Update documentation

This commit is contained in:
Alexis Métaireau 2023-10-15 22:46:48 +02:00
parent aff3bf647f
commit b5dd1f7ee1
11 changed files with 165 additions and 90 deletions

View file

@ -43,7 +43,7 @@
<p>(merci <a href="http://majerti.fr">gaston</a>&nbsp;!)</p> <p>(merci <a href="http://majerti.fr">gaston</a>&nbsp;!)</p>
<p>La directive suivante dans .ssh/config permet de sauter d&#8217;hôte en hôte <p>La directive suivante dans .ssh/config permet de sauter d&#8217;hôte en hôte
séparés par des &#8220;+&#8221;&nbsp;:</p> séparés par des &#8220;+&#8221;&nbsp;:</p>
<div class="highlight"><pre><span></span><code>Host *+* <div class="highlight"><pre><span></span><code>Host <span class="gs">*+*</span>
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&#39;) &#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&#39;)
PATH=.:\$PATH nc -w1 $(echo %h | sed &#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&#39;) PATH=.:\$PATH nc -w1 $(echo %h | sed &#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&#39;)

View file

@ -40,8 +40,8 @@
<p>It also, <a href="https://caddyserver.com/docs/automatic-https">setups automatically and transparently <span class="caps">SSL</span> certificates</a> for you (using Let&#8217;s Encrypt!), so I wanted to have a&nbsp;look.</p> <p>It also, <a href="https://caddyserver.com/docs/automatic-https">setups automatically and transparently <span class="caps">SSL</span> certificates</a> for you (using Let&#8217;s Encrypt!), so I wanted to have a&nbsp;look.</p>
<p>Here is the Caddy configuration file I&#8217;m now using&nbsp;:</p> <p>Here is the Caddy configuration file I&#8217;m now using&nbsp;:</p>
<div class="highlight"><pre><span></span><code>md.notmyidea.org { <div class="highlight"><pre><span></span><code>md.notmyidea.org {
root * /home/caddy/md.notmyidea.org root <span class="gs">* /home/caddy/md.notmyidea.org</span>
rewrite * /index.html <span class="gs"> rewrite *</span> /index.html
file_server file_server
templates templates
encode zstd gzip encode zstd gzip

View file

@ -243,9 +243,9 @@ Version&lt;span class="w"&gt; &lt;/span&gt;=&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Then, in weechat&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Then, in weechat&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;add&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;znc&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;host&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;6697&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;tls&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;username&lt;/span&gt;&lt;span class="o"&gt;=&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;username&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;password&lt;/span&gt;&lt;span class="o"&gt;=&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;yourpass&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;autoconnect&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;/server add znc host/6697 -tls -username=&amp;lt;username&amp;gt; -password=&amp;lt;yourpass&amp;gt; -autoconnect
&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;irc&lt;/span&gt;.&lt;span class="nv"&gt;server&lt;/span&gt;.&lt;span class="nv"&gt;znc&lt;/span&gt;.&lt;span class="nv"&gt;tls_fingerprint&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;fingerprint&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;goes&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;here&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; /set irc.server.znc.tls_fingerprint &amp;lt;fingerprint-goes-here&amp;gt;
&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;connect&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;znc&lt;/span&gt; /connect znc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;And you should be all&amp;nbsp;set!&lt;/p&gt; &lt;p&gt;And you should be all&amp;nbsp;set!&lt;/p&gt;
@ -345,8 +345,8 @@ llm&lt;span class="w"&gt; &lt;/span&gt;models&lt;span class="w"&gt; &lt;/span&gt
&lt;p&gt;It also, &lt;a href="https://caddyserver.com/docs/automatic-https"&gt;setups automatically and transparently &lt;span class="caps"&gt;SSL&lt;/span&gt; certificates&lt;/a&gt; for you (using Let&amp;#8217;s Encrypt!), so I wanted to have a&amp;nbsp;look.&lt;/p&gt; &lt;p&gt;It also, &lt;a href="https://caddyserver.com/docs/automatic-https"&gt;setups automatically and transparently &lt;span class="caps"&gt;SSL&lt;/span&gt; certificates&lt;/a&gt; for you (using Let&amp;#8217;s Encrypt!), so I wanted to have a&amp;nbsp;look.&lt;/p&gt;
&lt;p&gt;Here is the Caddy configuration file I&amp;#8217;m now using&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Here is the Caddy configuration file I&amp;#8217;m now using&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;md.notmyidea.org { &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;md.notmyidea.org {
root * /home/caddy/md.notmyidea.org root &lt;span class="gs"&gt;* /home/caddy/md.notmyidea.org&lt;/span&gt;
rewrite * /index.html &lt;span class="gs"&gt; rewrite *&lt;/span&gt; /index.html
file_server file_server
templates templates
encode zstd gzip encode zstd gzip
@ -2886,19 +2886,19 @@ nginx qui sert des fichiers statiques (ceux contenus dans
&lt;p&gt;Voici la section de la configuration de HAProxy (et &lt;a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72"&gt;la configuration &lt;p&gt;Voici la section de la configuration de HAProxy (et &lt;a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72"&gt;la configuration
complete&lt;/a&gt; complete&lt;/a&gt;
si ça peut être&amp;nbsp;utile):&lt;/p&gt; si ça peut être&amp;nbsp;utile):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;frontend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;frontend http
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;bind&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;:&lt;span class="mi"&gt;80&lt;/span&gt; bind 0.0.0.0:80
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;mode&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt; mode http
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;default_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;nginx_server&lt;/span&gt; default_backend nginx_server
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;acl&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;path_beg&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;.&lt;span class="nv"&gt;well&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;known&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;acme&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;challenge&lt;/span&gt; acl letsencrypt_check path_beg /.well-known/acme-challenge
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;use_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt; use_backend letsencrypt_backend if letsencrypt_check
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;redirect&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;scheme&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;https&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;code&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;301&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;{&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;ssl_fc&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;}&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt; redirect scheme https code 301 if !{ ssl_fc } !letsencrypt_check
&lt;span class="nv"&gt;backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_backend&lt;/span&gt; backend letsencrypt_backend
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;request&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;header&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt&lt;/span&gt;.&lt;span class="nv"&gt;requests&lt;/span&gt; http-request set-header Host letsencrypt.requests
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;dispatch&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;127&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;1&lt;/span&gt;:&lt;span class="mi"&gt;8000&lt;/span&gt; dispatch 127.0.0.1:8000
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Et celle de &lt;span class="caps"&gt;NGINX&lt;/span&gt;:&lt;/p&gt; &lt;p&gt;Et celle de &lt;span class="caps"&gt;NGINX&lt;/span&gt;:&lt;/p&gt;
@ -6950,7 +6950,7 @@ maman&amp;nbsp;chérie™):&lt;/p&gt;
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</summary><content type="html"> &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</summary><content type="html">
&lt;h2 id="tunelling"&gt;Tunelling&lt;/h2&gt; &lt;h2 id="tunelling"&gt;Tunelling&lt;/h2&gt;
@ -6962,7 +6962,7 @@ séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&amp;#39;) &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&amp;#39;)
PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#39;) PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#39;)
@ -9337,7 +9337,7 @@ some feedback from the&amp;nbsp;sync:&lt;/p&gt;
&lt;p&gt;This is probably perfectible, but that does the&amp;nbsp;job.&lt;/p&gt; &lt;p&gt;This is probably perfectible, but that does the&amp;nbsp;job.&lt;/p&gt;
&lt;p&gt;Last step is to tell you machine to run that frequently. That&amp;#8217;s what &lt;p&gt;Last step is to tell you machine to run that frequently. That&amp;#8217;s what
crontab is made for, so let&amp;#8217;s &lt;code&gt;crontab -e&lt;/code&gt;:&lt;/p&gt; crontab is made for, so let&amp;#8217;s &lt;code&gt;crontab -e&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; $ * */3 * * * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; $ &lt;span class="gs"&gt;* *&lt;/span&gt;/3 &lt;span class="gs"&gt;* *&lt;/span&gt; * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The \~/.Xdbus allows cron to communicate with your X11 session. Here is &lt;p&gt;The \~/.Xdbus allows cron to communicate with your X11 session. Here is

View file

@ -361,7 +361,7 @@ pour les filles, tu sais, un &amp;#8220;truc de&amp;nbsp;gonzesse&amp;#8221;.&lt
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description><pubDate>Thu, 27 Dec 2012 00:00:00 +0100</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2012-12-27:/astuces-ssh.html</guid><category>code</category></item><item><title>Gnome 3, extensions</title><link>https://blog.notmyidea.org/gnome-3-extensions.html</link><description> &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description><pubDate>Thu, 27 Dec 2012 00:00:00 +0100</pubDate><guid isPermaLink="false">tag:blog.notmyidea.org,2012-12-27:/astuces-ssh.html</guid><category>code</category></item><item><title>Gnome 3, extensions</title><link>https://blog.notmyidea.org/gnome-3-extensions.html</link><description>
&lt;p&gt;Après avoir tenté pendant un bout de temps unity, le bureau par defaut &lt;p&gt;Après avoir tenté pendant un bout de temps unity, le bureau par defaut

View file

@ -243,9 +243,9 @@ Version&lt;span class="w"&gt; &lt;/span&gt;=&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Then, in weechat&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Then, in weechat&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;add&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;znc&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;host&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;6697&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;tls&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;username&lt;/span&gt;&lt;span class="o"&gt;=&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;username&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;password&lt;/span&gt;&lt;span class="o"&gt;=&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;yourpass&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;autoconnect&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;/server add znc host/6697 -tls -username=&amp;lt;username&amp;gt; -password=&amp;lt;yourpass&amp;gt; -autoconnect
&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;irc&lt;/span&gt;.&lt;span class="nv"&gt;server&lt;/span&gt;.&lt;span class="nv"&gt;znc&lt;/span&gt;.&lt;span class="nv"&gt;tls_fingerprint&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;fingerprint&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;goes&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;here&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; /set irc.server.znc.tls_fingerprint &amp;lt;fingerprint-goes-here&amp;gt;
&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;connect&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;znc&lt;/span&gt; /connect znc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;And you should be all&amp;nbsp;set!&lt;/p&gt; &lt;p&gt;And you should be all&amp;nbsp;set!&lt;/p&gt;
@ -345,8 +345,8 @@ llm&lt;span class="w"&gt; &lt;/span&gt;models&lt;span class="w"&gt; &lt;/span&gt
&lt;p&gt;It also, &lt;a href="https://caddyserver.com/docs/automatic-https"&gt;setups automatically and transparently &lt;span class="caps"&gt;SSL&lt;/span&gt; certificates&lt;/a&gt; for you (using Let&amp;#8217;s Encrypt!), so I wanted to have a&amp;nbsp;look.&lt;/p&gt; &lt;p&gt;It also, &lt;a href="https://caddyserver.com/docs/automatic-https"&gt;setups automatically and transparently &lt;span class="caps"&gt;SSL&lt;/span&gt; certificates&lt;/a&gt; for you (using Let&amp;#8217;s Encrypt!), so I wanted to have a&amp;nbsp;look.&lt;/p&gt;
&lt;p&gt;Here is the Caddy configuration file I&amp;#8217;m now using&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Here is the Caddy configuration file I&amp;#8217;m now using&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;md.notmyidea.org { &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;md.notmyidea.org {
root * /home/caddy/md.notmyidea.org root &lt;span class="gs"&gt;* /home/caddy/md.notmyidea.org&lt;/span&gt;
rewrite * /index.html &lt;span class="gs"&gt; rewrite *&lt;/span&gt; /index.html
file_server file_server
templates templates
encode zstd gzip encode zstd gzip
@ -3324,19 +3324,19 @@ nginx qui sert des fichiers statiques (ceux contenus dans
&lt;p&gt;Voici la section de la configuration de HAProxy (et &lt;a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72"&gt;la configuration &lt;p&gt;Voici la section de la configuration de HAProxy (et &lt;a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72"&gt;la configuration
complete&lt;/a&gt; complete&lt;/a&gt;
si ça peut être&amp;nbsp;utile):&lt;/p&gt; si ça peut être&amp;nbsp;utile):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;frontend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;frontend http
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;bind&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;:&lt;span class="mi"&gt;80&lt;/span&gt; bind 0.0.0.0:80
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;mode&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt; mode http
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;default_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;nginx_server&lt;/span&gt; default_backend nginx_server
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;acl&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;path_beg&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;.&lt;span class="nv"&gt;well&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;known&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;acme&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;challenge&lt;/span&gt; acl letsencrypt_check path_beg /.well-known/acme-challenge
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;use_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt; use_backend letsencrypt_backend if letsencrypt_check
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;redirect&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;scheme&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;https&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;code&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;301&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;{&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;ssl_fc&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;}&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt; redirect scheme https code 301 if !{ ssl_fc } !letsencrypt_check
&lt;span class="nv"&gt;backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_backend&lt;/span&gt; backend letsencrypt_backend
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;request&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;header&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt&lt;/span&gt;.&lt;span class="nv"&gt;requests&lt;/span&gt; http-request set-header Host letsencrypt.requests
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;dispatch&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;127&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;1&lt;/span&gt;:&lt;span class="mi"&gt;8000&lt;/span&gt; dispatch 127.0.0.1:8000
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Et celle de &lt;span class="caps"&gt;NGINX&lt;/span&gt;:&lt;/p&gt; &lt;p&gt;Et celle de &lt;span class="caps"&gt;NGINX&lt;/span&gt;:&lt;/p&gt;
@ -6200,7 +6200,7 @@ maman&amp;nbsp;chérie™):&lt;/p&gt;
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</summary><content type="html"> &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</summary><content type="html">
&lt;h2 id="tunelling"&gt;Tunelling&lt;/h2&gt; &lt;h2 id="tunelling"&gt;Tunelling&lt;/h2&gt;
@ -6212,7 +6212,7 @@ séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&amp;#39;) &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&amp;#39;)
PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#39;) PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#39;)
@ -8587,7 +8587,7 @@ some feedback from the&amp;nbsp;sync:&lt;/p&gt;
&lt;p&gt;This is probably perfectible, but that does the&amp;nbsp;job.&lt;/p&gt; &lt;p&gt;This is probably perfectible, but that does the&amp;nbsp;job.&lt;/p&gt;
&lt;p&gt;Last step is to tell you machine to run that frequently. That&amp;#8217;s what &lt;p&gt;Last step is to tell you machine to run that frequently. That&amp;#8217;s what
crontab is made for, so let&amp;#8217;s &lt;code&gt;crontab -e&lt;/code&gt;:&lt;/p&gt; crontab is made for, so let&amp;#8217;s &lt;code&gt;crontab -e&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; $ * */3 * * * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; $ &lt;span class="gs"&gt;* *&lt;/span&gt;/3 &lt;span class="gs"&gt;* *&lt;/span&gt; * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The \~/.Xdbus allows cron to communicate with your X11 session. Here is &lt;p&gt;The \~/.Xdbus allows cron to communicate with your X11 session. Here is

View file

@ -243,9 +243,9 @@ Version&lt;span class="w"&gt; &lt;/span&gt;=&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Then, in weechat&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Then, in weechat&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;add&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;znc&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;host&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;6697&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;tls&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;username&lt;/span&gt;&lt;span class="o"&gt;=&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;username&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;password&lt;/span&gt;&lt;span class="o"&gt;=&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;yourpass&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;autoconnect&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;/server add znc host/6697 -tls -username=&amp;lt;username&amp;gt; -password=&amp;lt;yourpass&amp;gt; -autoconnect
&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;irc&lt;/span&gt;.&lt;span class="nv"&gt;server&lt;/span&gt;.&lt;span class="nv"&gt;znc&lt;/span&gt;.&lt;span class="nv"&gt;tls_fingerprint&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;fingerprint&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;goes&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;here&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; /set irc.server.znc.tls_fingerprint &amp;lt;fingerprint-goes-here&amp;gt;
&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;connect&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;znc&lt;/span&gt; /connect znc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;And you should be all&amp;nbsp;set!&lt;/p&gt; &lt;p&gt;And you should be all&amp;nbsp;set!&lt;/p&gt;
@ -345,8 +345,8 @@ llm&lt;span class="w"&gt; &lt;/span&gt;models&lt;span class="w"&gt; &lt;/span&gt
&lt;p&gt;It also, &lt;a href="https://caddyserver.com/docs/automatic-https"&gt;setups automatically and transparently &lt;span class="caps"&gt;SSL&lt;/span&gt; certificates&lt;/a&gt; for you (using Let&amp;#8217;s Encrypt!), so I wanted to have a&amp;nbsp;look.&lt;/p&gt; &lt;p&gt;It also, &lt;a href="https://caddyserver.com/docs/automatic-https"&gt;setups automatically and transparently &lt;span class="caps"&gt;SSL&lt;/span&gt; certificates&lt;/a&gt; for you (using Let&amp;#8217;s Encrypt!), so I wanted to have a&amp;nbsp;look.&lt;/p&gt;
&lt;p&gt;Here is the Caddy configuration file I&amp;#8217;m now using&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Here is the Caddy configuration file I&amp;#8217;m now using&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;md.notmyidea.org { &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;md.notmyidea.org {
root * /home/caddy/md.notmyidea.org root &lt;span class="gs"&gt;* /home/caddy/md.notmyidea.org&lt;/span&gt;
rewrite * /index.html &lt;span class="gs"&gt; rewrite *&lt;/span&gt; /index.html
file_server file_server
templates templates
encode zstd gzip encode zstd gzip
@ -3418,19 +3418,19 @@ nginx qui sert des fichiers statiques (ceux contenus dans
&lt;p&gt;Voici la section de la configuration de HAProxy (et &lt;a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72"&gt;la configuration &lt;p&gt;Voici la section de la configuration de HAProxy (et &lt;a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72"&gt;la configuration
complete&lt;/a&gt; complete&lt;/a&gt;
si ça peut être&amp;nbsp;utile):&lt;/p&gt; si ça peut être&amp;nbsp;utile):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;frontend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;frontend http
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;bind&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;:&lt;span class="mi"&gt;80&lt;/span&gt; bind 0.0.0.0:80
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;mode&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt; mode http
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;default_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;nginx_server&lt;/span&gt; default_backend nginx_server
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;acl&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;path_beg&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;.&lt;span class="nv"&gt;well&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;known&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;acme&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;challenge&lt;/span&gt; acl letsencrypt_check path_beg /.well-known/acme-challenge
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;use_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt; use_backend letsencrypt_backend if letsencrypt_check
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;redirect&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;scheme&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;https&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;code&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;301&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;{&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;ssl_fc&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;}&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt; redirect scheme https code 301 if !{ ssl_fc } !letsencrypt_check
&lt;span class="nv"&gt;backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_backend&lt;/span&gt; backend letsencrypt_backend
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;request&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;header&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt&lt;/span&gt;.&lt;span class="nv"&gt;requests&lt;/span&gt; http-request set-header Host letsencrypt.requests
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;dispatch&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;127&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;1&lt;/span&gt;:&lt;span class="mi"&gt;8000&lt;/span&gt; dispatch 127.0.0.1:8000
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Et celle de &lt;span class="caps"&gt;NGINX&lt;/span&gt;:&lt;/p&gt; &lt;p&gt;Et celle de &lt;span class="caps"&gt;NGINX&lt;/span&gt;:&lt;/p&gt;
@ -7482,7 +7482,7 @@ maman&amp;nbsp;chérie™):&lt;/p&gt;
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</summary><content type="html"> &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</summary><content type="html">
&lt;h2 id="tunelling"&gt;Tunelling&lt;/h2&gt; &lt;h2 id="tunelling"&gt;Tunelling&lt;/h2&gt;
@ -7494,7 +7494,7 @@ séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&amp;#39;) &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&amp;#39;)
PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#39;) PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#39;)
@ -9869,7 +9869,7 @@ some feedback from the&amp;nbsp;sync:&lt;/p&gt;
&lt;p&gt;This is probably perfectible, but that does the&amp;nbsp;job.&lt;/p&gt; &lt;p&gt;This is probably perfectible, but that does the&amp;nbsp;job.&lt;/p&gt;
&lt;p&gt;Last step is to tell you machine to run that frequently. That&amp;#8217;s what &lt;p&gt;Last step is to tell you machine to run that frequently. That&amp;#8217;s what
crontab is made for, so let&amp;#8217;s &lt;code&gt;crontab -e&lt;/code&gt;:&lt;/p&gt; crontab is made for, so let&amp;#8217;s &lt;code&gt;crontab -e&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; $ * */3 * * * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; $ &lt;span class="gs"&gt;* *&lt;/span&gt;/3 &lt;span class="gs"&gt;* *&lt;/span&gt; * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The \~/.Xdbus allows cron to communicate with your X11 session. Here is &lt;p&gt;The \~/.Xdbus allows cron to communicate with your X11 session. Here is

View file

@ -159,9 +159,9 @@ Version&lt;span class="w"&gt; &lt;/span&gt;=&lt;span class="w"&gt; &lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Then, in weechat&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Then, in weechat&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;server&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;add&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;znc&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;host&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;6697&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;tls&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;username&lt;/span&gt;&lt;span class="o"&gt;=&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;username&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;password&lt;/span&gt;&lt;span class="o"&gt;=&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;yourpass&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;autoconnect&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;/server add znc host/6697 -tls -username=&amp;lt;username&amp;gt; -password=&amp;lt;yourpass&amp;gt; -autoconnect
&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;set&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;irc&lt;/span&gt;.&lt;span class="nv"&gt;server&lt;/span&gt;.&lt;span class="nv"&gt;znc&lt;/span&gt;.&lt;span class="nv"&gt;tls_fingerprint&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nv"&gt;fingerprint&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;goes&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;here&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt; /set irc.server.znc.tls_fingerprint &amp;lt;fingerprint-goes-here&amp;gt;
&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="k"&gt;connect&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;znc&lt;/span&gt; /connect znc
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;And you should be all&amp;nbsp;set!&lt;/p&gt; &lt;p&gt;And you should be all&amp;nbsp;set!&lt;/p&gt;
@ -224,8 +224,8 @@ llm&lt;span class="w"&gt; &lt;/span&gt;models&lt;span class="w"&gt; &lt;/span&gt
&lt;p&gt;It also, &lt;a href="https://caddyserver.com/docs/automatic-https"&gt;setups automatically and transparently &lt;span class="caps"&gt;SSL&lt;/span&gt; certificates&lt;/a&gt; for you (using Let&amp;#8217;s Encrypt!), so I wanted to have a&amp;nbsp;look.&lt;/p&gt; &lt;p&gt;It also, &lt;a href="https://caddyserver.com/docs/automatic-https"&gt;setups automatically and transparently &lt;span class="caps"&gt;SSL&lt;/span&gt; certificates&lt;/a&gt; for you (using Let&amp;#8217;s Encrypt!), so I wanted to have a&amp;nbsp;look.&lt;/p&gt;
&lt;p&gt;Here is the Caddy configuration file I&amp;#8217;m now using&amp;nbsp;:&lt;/p&gt; &lt;p&gt;Here is the Caddy configuration file I&amp;#8217;m now using&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;md.notmyidea.org { &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;md.notmyidea.org {
root * /home/caddy/md.notmyidea.org root &lt;span class="gs"&gt;* /home/caddy/md.notmyidea.org&lt;/span&gt;
rewrite * /index.html &lt;span class="gs"&gt; rewrite *&lt;/span&gt; /index.html
file_server file_server
templates templates
encode zstd gzip encode zstd gzip
@ -1291,19 +1291,19 @@ nginx qui sert des fichiers statiques (ceux contenus dans
&lt;p&gt;Voici la section de la configuration de HAProxy (et &lt;a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72"&gt;la configuration &lt;p&gt;Voici la section de la configuration de HAProxy (et &lt;a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72"&gt;la configuration
complete&lt;/a&gt; complete&lt;/a&gt;
si ça peut être&amp;nbsp;utile):&lt;/p&gt; si ça peut être&amp;nbsp;utile):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nv"&gt;frontend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt; &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;frontend http
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;bind&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;:&lt;span class="mi"&gt;80&lt;/span&gt; bind 0.0.0.0:80
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;mode&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt; mode http
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;default_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;nginx_server&lt;/span&gt; default_backend nginx_server
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;acl&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;path_beg&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;.&lt;span class="nv"&gt;well&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;known&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;acme&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;challenge&lt;/span&gt; acl letsencrypt_check path_beg /.well-known/acme-challenge
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;use_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt; use_backend letsencrypt_backend if letsencrypt_check
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;redirect&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;scheme&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;https&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;code&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;301&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;{&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;ssl_fc&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;}&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_check&lt;/span&gt; redirect scheme https code 301 if !{ ssl_fc } !letsencrypt_check
&lt;span class="nv"&gt;backend&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt_backend&lt;/span&gt; backend letsencrypt_backend
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;http&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;request&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;set&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;header&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;letsencrypt&lt;/span&gt;.&lt;span class="nv"&gt;requests&lt;/span&gt; http-request set-header Host letsencrypt.requests
&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;dispatch&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;127&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt;.&lt;span class="mi"&gt;1&lt;/span&gt;:&lt;span class="mi"&gt;8000&lt;/span&gt; dispatch 127.0.0.1:8000
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Et celle de &lt;span class="caps"&gt;NGINX&lt;/span&gt;:&lt;/p&gt; &lt;p&gt;Et celle de &lt;span class="caps"&gt;NGINX&lt;/span&gt;:&lt;/p&gt;
@ -4224,7 +4224,7 @@ fois &lt;span class="caps"&gt;SSL&lt;/span&gt; et &lt;span class="caps"&gt;TLS&l
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</summary><content type="html"> &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l …&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</summary><content type="html">
&lt;h2 id="tunelling"&gt;Tunelling&lt;/h2&gt; &lt;h2 id="tunelling"&gt;Tunelling&lt;/h2&gt;
@ -4236,7 +4236,7 @@ séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt; &lt;p&gt;(merci &lt;a href="http://majerti.fr"&gt;gaston&lt;/a&gt;&amp;nbsp;!)&lt;/p&gt;
&lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte &lt;p&gt;La directive suivante dans .ssh/config permet de sauter d&amp;#8217;hôte en hôte
séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt; séparés par des &amp;#8220;+&amp;#8221;&amp;nbsp;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host *+* &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Host &lt;span class="gs"&gt;*+*&lt;/span&gt;
ProxyCommand ssh $(echo %h | sed ProxyCommand ssh $(echo %h | sed
&amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&amp;#39;) &amp;#39;s/+[^+]*$//;s/\([^+%%]*\)%%\([^+]*\)$/\2 -l \1/;s/:/ -p /&amp;#39;)
PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#39;) PATH=.:\$PATH nc -w1 $(echo %h | sed &amp;#39;s/^.*+//;/:/!s/$/ %p/;s/:/ /&amp;#39;)
@ -5798,7 +5798,7 @@ some feedback from the&amp;nbsp;sync:&lt;/p&gt;
&lt;p&gt;This is probably perfectible, but that does the&amp;nbsp;job.&lt;/p&gt; &lt;p&gt;This is probably perfectible, but that does the&amp;nbsp;job.&lt;/p&gt;
&lt;p&gt;Last step is to tell you machine to run that frequently. That&amp;#8217;s what &lt;p&gt;Last step is to tell you machine to run that frequently. That&amp;#8217;s what
crontab is made for, so let&amp;#8217;s &lt;code&gt;crontab -e&lt;/code&gt;:&lt;/p&gt; crontab is made for, so let&amp;#8217;s &lt;code&gt;crontab -e&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; $ * */3 * * * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py &lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt; $ &lt;span class="gs"&gt;* *&lt;/span&gt;/3 &lt;span class="gs"&gt;* *&lt;/span&gt; * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The \~/.Xdbus allows cron to communicate with your X11 session. Here is &lt;p&gt;The \~/.Xdbus allows cron to communicate with your X11 session. Here is

75
keybase.txt Normal file
View file

@ -0,0 +1,75 @@
==================================================================
https://keybase.io/ametaireau
--------------------------------------------------------------------
I hereby claim:
* I am an admin of https://blog.notmyidea.org
* I am ametaireau (https://keybase.io/ametaireau) on keybase.
* I have a public key with fingerprint 48C0 AF3C CDB9 09C5 F0DA 2006 F220 DD6C A69A D079
To do so, I am signing this object:
{
"body": {
"key": {
"eldest_kid": "01200a0019e82db029bac22e6b2d6f4745a2dfb4f4f8d1035dd66d64fd521d8893b50a",
"fingerprint": "48c0af3ccdb909c5f0da2006f220dd6ca69ad079",
"host": "keybase.io",
"key_id": "f220dd6ca69ad079",
"kid": "0101af4b615f7520524ee2bbac2b186563e037da3b8a52c8d37f61e135b0e18f58300a",
"uid": "07d53c711cfea1d80d1f2ccb586e6c19",
"username": "ametaireau"
},
"service": {
"hostname": "blog.notmyidea.org",
"protocol": "https:"
},
"type": "web_service_binding",
"version": 1
},
"ctime": 1697402418,
"expire_in": 157680000,
"prev": "f9d3a6b3a030c6c9722d7f2c837fdbe5b9341820254979dd0480becd812867e1",
"seqno": 37,
"tag": "signature"
}
which yields the signature:
-----BEGIN PGP MESSAGE-----
Version: Keybase OpenPGP v2.1.13
Comment: https://keybase.io/crypto
yMN6AnicbVJtUFRVGF5EELZIhTADJuIO1chueO6532vQZIKOIp8Ji5F47z3nLjdw
d9ldPnYAFcsMTRtiYpIRaWjEwkwFBwMmR/nKUULDapaIgswmcKbUCWYUie4l/df5
cc6c9zzP8z7vM6cvxN9g9Lv77FhRS8M1r9+Vix+XGLA5FVYQkgN5CUsFUYgXDlyE
sNuTX6giwkIAEgIgAkAKmIdIAlCQRBlCzEoQsQrN0YwIkSLRCq3wiAQUgxDLIpZW
EANJxPMCJTFAJMyEotpt2OV0qXaPJkvzMhAVSpaRJABBZhSARK0Rq0AINAVZZAUR
AU7QiAUOt87QzEmiG8erDq2mXfIX7P0P/pFvQIoKLbEko3AMBAykMYaSbl4ieZZh
KQwoDomUxIsMlHlEcQpLYpJiJIBJXmF4Ciz4LvlPjkMMJXMkKStY1OYCiFSgLEsM
z2JWJvW+JW7ssos7sIbWdo+ourBYQlSZCa1eqspYj1af5SFGKnLY4u0Ozw6virAY
73DZNA2ny+FxyI4i7b3A43G6LTrf43XqhDIs5T+UypdUO9Ly1Bil2OVWHXbCQmpI
2aPq2iQrcDSANMmbCVzu1IzkqzqC4VgeaEvvg0v19AREiaxEiYACMisLHISI0+bi
tTCQhBlJoDQRCCBDC5yAEKB5IGEZ8STkWQ6ThD5csd1BWChO8ynaNE23arOLnhIX
Jqp6LuYtNvgZDYEBi/SPZjAGL3v0/QK7l86tvLBr1/XpAUPLH28NNA4MY+8D7801
lw1v7Cy55B1ET5TLtfWzk0/F7N6SMnUutiB4Is3qO5zS3Hq1OjkstmusLbltvi39
UpWlblHxOmPl9vNxgVv3HF59Ninv+Yq+nX2JZVeL66vGW2b+SZ0IjQ7vD+3O/HH/
NNzUn348+qPTpm/m4rp8fnHZ1vH2kYDHb/0Z5v1hkLC2boqTv/MP+LWlbL5mMqGu
8rPYbLVhZujYwbbaqMZW5bhY5mv079mYU9jQfMZUXzMitsz8lDh24fLyQ1kvudfs
eXvF7W2jVUVBfSM3hvEHR5pTOz4ZRHWNeZ61PTRcMlq3jYuY953+q+7UmdK51hSq
vfpk0JQ1Z96ZnXvtRk7Ub+cXj68wfb9x1hp5e6jPEmysT2yIjqp+8b2YzozwU4ds
UdSbc4GvPTkxeXO23uEjcwIne2+FXfm0uQtuJvfl1FptXx4Ieqx+byYIbemuzUru
uN8U4/pajZBPHB3qfmHZ+70H1tcsN2eEdG15buBo8cqEyOS09Nw7rb2bv33XR99b
HzzCphlmjr38zjNRpqbkE6bQkOnK3f2W+x+uurvhdY9z9OkH3YPhSVOF5V90RZ2t
/WXD1sKErtUZU6+Y0pZ0o1ebKjqWTt0xl0YO2Ix/T/+elWY6l/tV+yrfkbUF+ddP
3vv583UHUWdnYdW+/UmZedu9w+a8dnfEv6hyxQQ=
=i1zA
-----END PGP MESSAGE-----
And finally, I am proving ownership of this host by posting or
appending to this document.
View my publicly-auditable identity here: https://keybase.io/ametaireau
==================================================================

View file

@ -89,19 +89,19 @@ nginx qui sert des fichiers statiques (ceux contenus dans
<p>Voici la section de la configuration de HAProxy (et <a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72">la configuration <p>Voici la section de la configuration de HAProxy (et <a href="https://github.com/almet/infra/blob/master/haproxy/haproxy.cfg#L63-L72">la configuration
complete</a> complete</a>
si ça peut être&nbsp;utile):</p> si ça peut être&nbsp;utile):</p>
<div class="highlight"><pre><span></span><code><span class="nv">frontend</span><span class="w"> </span><span class="nv">http</span> <div class="highlight"><pre><span></span><code>frontend http
<span class="w"> </span><span class="nv">bind</span><span class="w"> </span><span class="mi">0</span>.<span class="mi">0</span>.<span class="mi">0</span>.<span class="mi">0</span>:<span class="mi">80</span> bind 0.0.0.0:80
<span class="w"> </span><span class="nv">mode</span><span class="w"> </span><span class="nv">http</span> mode http
<span class="w"> </span><span class="nv">default_backend</span><span class="w"> </span><span class="nv">nginx_server</span> default_backend nginx_server
<span class="w"> </span><span class="nv">acl</span><span class="w"> </span><span class="nv">letsencrypt_check</span><span class="w"> </span><span class="nv">path_beg</span><span class="w"> </span><span class="o">/</span>.<span class="nv">well</span><span class="o">-</span><span class="nv">known</span><span class="o">/</span><span class="nv">acme</span><span class="o">-</span><span class="nv">challenge</span> acl letsencrypt_check path_beg /.well-known/acme-challenge
<span class="w"> </span><span class="nv">use_backend</span><span class="w"> </span><span class="nv">letsencrypt_backend</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="nv">letsencrypt_check</span> use_backend letsencrypt_backend if letsencrypt_check
<span class="w"> </span><span class="nv">redirect</span><span class="w"> </span><span class="nv">scheme</span><span class="w"> </span><span class="nv">https</span><span class="w"> </span><span class="nv">code</span><span class="w"> </span><span class="mi">301</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="o">!</span>{<span class="w"> </span><span class="nv">ssl_fc</span><span class="w"> </span>}<span class="w"> </span><span class="o">!</span><span class="nv">letsencrypt_check</span> redirect scheme https code 301 if !{ ssl_fc } !letsencrypt_check
<span class="nv">backend</span><span class="w"> </span><span class="nv">letsencrypt_backend</span> backend letsencrypt_backend
<span class="w"> </span><span class="nv">http</span><span class="o">-</span><span class="nv">request</span><span class="w"> </span><span class="nv">set</span><span class="o">-</span><span class="nv">header</span><span class="w"> </span><span class="nv">Host</span><span class="w"> </span><span class="nv">letsencrypt</span>.<span class="nv">requests</span> http-request set-header Host letsencrypt.requests
<span class="w"> </span><span class="nv">dispatch</span><span class="w"> </span><span class="mi">127</span>.<span class="mi">0</span>.<span class="mi">0</span>.<span class="mi">1</span>:<span class="mi">8000</span> dispatch 127.0.0.1:8000
</code></pre></div> </code></pre></div>
<p>Et celle de <span class="caps">NGINX</span>:</p> <p>Et celle de <span class="caps">NGINX</span>:</p>

View file

@ -127,9 +127,9 @@ Version<span class="w"> </span>=<span class="w"> </span>1.8.2
</code></pre></div> </code></pre></div>
<p>Then, in weechat&nbsp;:</p> <p>Then, in weechat&nbsp;:</p>
<div class="highlight"><pre><span></span><code><span class="o">/</span><span class="nv">server</span><span class="w"> </span><span class="nv">add</span><span class="w"> </span><span class="nv">znc</span><span class="w"> </span><span class="nv">host</span><span class="o">/</span><span class="mi">6697</span><span class="w"> </span><span class="o">-</span><span class="nv">tls</span><span class="w"> </span><span class="o">-</span><span class="nv">username</span><span class="o">=&lt;</span><span class="nv">username</span><span class="o">&gt;</span><span class="w"> </span><span class="o">-</span><span class="nv">password</span><span class="o">=&lt;</span><span class="nv">yourpass</span><span class="o">&gt;</span><span class="w"> </span><span class="o">-</span><span class="nv">autoconnect</span> <div class="highlight"><pre><span></span><code>/server add znc host/6697 -tls -username=&lt;username&gt; -password=&lt;yourpass&gt; -autoconnect
<span class="o">/</span><span class="nv">set</span><span class="w"> </span><span class="nv">irc</span>.<span class="nv">server</span>.<span class="nv">znc</span>.<span class="nv">tls_fingerprint</span><span class="w"> </span><span class="o">&lt;</span><span class="nv">fingerprint</span><span class="o">-</span><span class="nv">goes</span><span class="o">-</span><span class="nv">here</span><span class="o">&gt;</span> /set irc.server.znc.tls_fingerprint &lt;fingerprint-goes-here&gt;
<span class="o">/</span><span class="k">connect</span><span class="w"> </span><span class="nv">znc</span> /connect znc
</code></pre></div> </code></pre></div>
<p>And you should be all&nbsp;set!</p> <p>And you should be all&nbsp;set!</p>

View file

@ -154,7 +154,7 @@ some feedback from the&nbsp;sync:</p>
<p>This is probably perfectible, but that does the&nbsp;job.</p> <p>This is probably perfectible, but that does the&nbsp;job.</p>
<p>Last step is to tell you machine to run that frequently. That&#8217;s what <p>Last step is to tell you machine to run that frequently. That&#8217;s what
crontab is made for, so let&#8217;s <code>crontab -e</code>:</p> crontab is made for, so let&#8217;s <code>crontab -e</code>:</p>
<div class="highlight"><pre><span></span><code> $ * */3 * * * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py <div class="highlight"><pre><span></span><code> $ <span class="gs">* *</span>/3 <span class="gs">* *</span> * . ~/.Xdbus; /usr/bin/python /home/alexis/dev/python/unison-syncer/sync.py
</code></pre></div> </code></pre></div>
<p>The \~/.Xdbus allows cron to communicate with your X11 session. Here is <p>The \~/.Xdbus allows cron to communicate with your X11 session. Here is