<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Posts on AdRiLiNuX's web site</title><link>https://www.reslinger.net/posts/</link><description>Recent content in Posts on AdRiLiNuX's web site</description><generator>Hugo -- gohugo.io</generator><language>fr-fr</language><lastBuildDate>Mon, 19 Jul 2021 00:00:00 +0000</lastBuildDate><atom:link href="https://www.reslinger.net/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>DNSSEC avec Cloudflare et registrar OVH</title><link>https://www.reslinger.net/2021/07/dnssec-avec-cloudflare-et-registrar-ovh/</link><pubDate>Mon, 19 Jul 2021 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2021/07/dnssec-avec-cloudflare-et-registrar-ovh/</guid><description>&lt;p>Petit aide mémoire aujourd&amp;rsquo;hui sur la configuration du DNSSEC quand on a ses serveurs DNS chez Cloudflare et que le domaine est chez OVH.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>OVH&lt;/th>
&lt;th>Cloudflare&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Key tag&lt;/td>
&lt;td>Balise clé&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Flag&lt;/td>
&lt;td>Indicateurs&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Algorithme&lt;/td>
&lt;td>Algorithme&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Clé publique&lt;/td>
&lt;td>Clé publique&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>Ce qui donne quelque chose comme ce qui suit chez OVH&lt;/p>
&lt;p>&lt;img src="ds-ovh.png" alt="DS OVH">&lt;/p></description></item><item><title>Backup Bluetooth</title><link>https://www.reslinger.net/2021/02/backup-bluetooth/</link><pubDate>Fri, 19 Feb 2021 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2021/02/backup-bluetooth/</guid><description>&lt;p>J&amp;rsquo;ai réinstallé mon ordi il y a quelques temps maintenant, et une chose que je ne voulais pas faire était de devoir ré-appairer tous mes périphériques bluetooth. J&amp;rsquo;ai donc fait quelques rechercher et j&amp;rsquo;ai trouvé ma réponse sur &lt;a href="https://superuser.com/questions/406098/retrieve-paired-bluetooth-devices-from-console/406633">superuser.com&lt;/a>.
Dans le cas d&amp;rsquo;une CentOS et d&amp;rsquo;Ubuntu plus récente, les appairages sont sauvegardés dans le répertoire /var/lib/bluetooth/ . Le (ou les) répertoire(s) présent sont l&amp;rsquo;adresse MAC du périphérique bluetooth hôte. La sauvegarde peut simplement se faire via :&lt;/p>
&lt;pre>&lt;code>tar -zcf bluetooth.tar.gz /var/lib/bluetooth
&lt;/code>&lt;/pre></description></item><item><title>Mode rescue OVH</title><link>https://www.reslinger.net/2020/08/mode-rescue-ovh/</link><pubDate>Fri, 21 Aug 2020 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2020/08/mode-rescue-ovh/</guid><description>&lt;p>Pour des raisons de coût; mon infra repose sur de petits serveurs dédiés à prix promotionnel. J&amp;rsquo;en ai actuellement un chez SoYouStart, mais ce qui suis est également valable pour des serveurs dédiés chez OVH (ainsi que Kimsufi).
Une des particularités des serveurs dédiés pas cher, c&amp;rsquo;est qu&amp;rsquo;il n&amp;rsquo;y a pas systématiquement de carte d&amp;rsquo;accès à distance type Ilo ou Drac. Chez OVH, nous avons un système de rescue qui peut nous aider lorsque le serveur à un sérieux problème.&lt;/p>
&lt;p>Lors d&amp;rsquo;un simple reboot, j&amp;rsquo;ai perdu la main sur mon serveur, j&amp;rsquo;ai donc lancer le mode rescue.
Une fois ce mode démarrer, on peut se connecter sur un système temporaire basé sur Debian en SSH pour essayer de comprendre ce qui ne va pas.
Petite parenthèse, un service web tourne sur le port 81 du système et permet de faire quelques test matériel. Les identifiants sont les même qu&amp;rsquo;avec SSH (utilisateur root, mot de passe reçu par mail).&lt;/p>
&lt;p>Le billet du jour à pour propos de traiter la collecte d&amp;rsquo;informations pour le déboguage de la séquence de boot.&lt;/p>
&lt;p>Mon système fonctionnait parfaitement avant que je le relance, le problème est lié à la séquence de boot et non à une panne matériel. Depuis la console SSH du mode rescue, j&amp;rsquo;installe donc le nécessaire pour voir la séquence de boot. Le nécessaire est la virtualisation. C&amp;rsquo;est parti.&lt;/p>
&lt;p>Par habitude, je commence par mettre le système à jour&lt;/p>
&lt;pre>&lt;code>apt update; apt upgrade -y
&lt;/code>&lt;/pre>
&lt;p>Je désactive le RAID disque de mes disques pour évité d&amp;rsquo;avoir 2 systèmes qui accèdent aux mêmes données&lt;/p>
&lt;pre>&lt;code>mdadm --manage --stop /dev/md127
&lt;/code>&lt;/pre>
&lt;p>Ensuite j&amp;rsquo;installe le nécessaire pour lancer mon système dans une machine virtuelle&lt;/p>
&lt;pre>&lt;code>apt install qemu-kvm libvirt-bin ovmf virtinst -y
&lt;/code>&lt;/pre>
&lt;p>Et je lance la virtualisation de mon système&lt;/p>
&lt;pre>&lt;code>systemctl start libvirtd
virsh net-start default
virt-install --name rescue --hvm --vcpus=4 --ram 8192 --machine q35 --disk path=/dev/sda,bus=virtio,format=raw --disk path=/dev/sdb,bus=virtio,format=raw --disk path=/dev/sdc,bus=virtio,format=raw --disk path=/dev/sdd,bus=virtio,format=raw --network network:default,model=virtio --graphics spice --video qxl --channel spicevmc --rng /dev/random --noautoconsole --console pty,target_type=serial --os-type=linux --os-variant=rhel7 --import
&lt;/code>&lt;/pre>
&lt;p>Si la configuration de votre grub permet le contrôle depuis le port série, vous pouvez y accéder directement &lt;a href="https://www.reslinger.net/2014/12/console-virsh/">depuis la console&lt;/a>. Autrement, installez les paquets suivant&lt;/p>
&lt;pre>&lt;code>apt install virt-manager xauth
&lt;/code>&lt;/pre>
&lt;p>Après vous être reloggué, vous pourrez lancer virt-manager et avoir accès à la console et voir enfin pourquoi votre système ne démarre plus.&lt;/p></description></item><item><title>Copie d'image Docker</title><link>https://www.reslinger.net/2020/07/copie-dimage-docker/</link><pubDate>Wed, 01 Jul 2020 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2020/07/copie-dimage-docker/</guid><description>&lt;p>Petit tips Docker pour copier une image d&amp;rsquo;un registre à un autre.&lt;/p>
&lt;p>De temps en temps on a besoin de sortir une image docker d&amp;rsquo;un registre privé dans un autre registre (privé ou publique). Bien que les commande pull et push sont généralement connue, la commande manquant est un retag. L&amp;rsquo;opération globale donne donc ceci:&lt;/p>
&lt;pre>&lt;code>docker image pull ancien-registre/application:tag
docker tag ancien-registre/application:tag nouveau-registre/application:tag
docker push nouveau-registre/application:tag
&lt;/code>&lt;/pre>
&lt;p>Source: &lt;a href="https://stackoverflow.com/questions/49976188/copy-docker-image-between-repositories">stackoverflow&lt;/a>&lt;/p></description></item><item><title>Déploiement de Traefik 2.0 sur docker swarm</title><link>https://www.reslinger.net/2019/09/d%C3%A9ploiement-de-traefik-2.0-sur-docker-swarm/</link><pubDate>Mon, 30 Sep 2019 18:56:44 +0200</pubDate><guid>https://www.reslinger.net/2019/09/d%C3%A9ploiement-de-traefik-2.0-sur-docker-swarm/</guid><description>&lt;p>Traefik 2.0 est sortie en version finale il y a quelques jours et j&amp;rsquo;ai donc effectué la migration de ma configuration. Je savais que la configuration avait subie de gros changement, mais j&amp;rsquo;ai quand même rencontrer quelques difficultées sur les points avancés.&lt;/p>
&lt;p>Un trucs que je n&amp;rsquo;avais pas compris tout de suite, c&amp;rsquo;est qu&amp;rsquo;on peut utiliser les middleware à différents endroits, ce qui permet de ne pas dupliquer du code pour chaque service déployer. Et ça c&amp;rsquo;est super cool.&lt;/p>
&lt;p>Bien que l&amp;rsquo;on puisse faire des appels à des middlewares déclarés dans d&amp;rsquo;autres providers, je n&amp;rsquo;ai pas réussi à utiliser le provider file depuis le provider dynamique docker (un nouveau middlerware vide était créé et surchargeait celui que j&amp;rsquo;avais défini en fichier).&lt;/p>
&lt;p>Bien, déployons et commençons donc par les middlewares réutilisables. Étant donné qu&amp;rsquo;il ne servent à rien si traefik n&amp;rsquo;est pas présent, je les déclare donc dans le docker-compose de traefik :&lt;/p>
&lt;p>Le premier middleware est utile pour la redirection http vers https&lt;/p>
&lt;pre>&lt;code> - &amp;quot;traefik.http.middlewares.https_redirect.redirectscheme.scheme=https&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Le second middleware est une authentification basique, utile pour une petite infrastructure / équipe pour sécuriser rapidement les sites déployé&lt;/p>
&lt;pre>&lt;code> - &amp;quot;traefik.http.middlewares.auth.basicauth.users=admin:$$apr1$$kr4VIpmn$$LDCgCQOlcqlOovSTa/0SD1&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Le troisième est la compression, avec ses avantages et ses inconvénients ( à utiliser au besoin )&lt;/p>
&lt;pre>&lt;code> - &amp;quot;traefik.http.middlewares.compress.compress=true&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Et pour le dernier du jour, on peut définir un groupe d&amp;rsquo;hentête de sécurité ( à adapter en fonction des besions )&lt;/p>
&lt;pre>&lt;code> - &amp;quot;traefik.http.middlewares.security-headers.headers.browserXssFilter=true&amp;quot;
- &amp;quot;traefik.http.middlewares.security-headers.headers.contentTypeNosniff=true&amp;quot;
- &amp;quot;traefik.http.middlewares.security-headers.headers.forceSTSHeader=true&amp;quot;
- &amp;quot;traefik.http.middlewares.security-headers.headers.stsIncludeSubdomains=true&amp;quot;
- &amp;quot;traefik.http.middlewares.security-headers.headers.stsPreload=true&amp;quot;
- &amp;quot;traefik.http.middlewares.security-headers.headers.stsSeconds=15768000&amp;quot;
- &amp;quot;traefik.http.middlewares.security-headers.headers.frameDeny=true&amp;quot;
- &amp;quot;traefik.http.middlewares.security-headers.headers.sslRedirect=true&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Avant de passer aux services, nous pouvons aussi personnaliser la configuration TLS via le provider file en créant un fichier avec, par exemple, le contenu suivant :&lt;/p>
&lt;pre>&lt;code> tls:
options:
default:
sniStrict: true
minVersion: VersionTLS12
cipherSuites:
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305
&lt;/code>&lt;/pre>
&lt;p>Nous pouvons maintenant déployer des services en utilisant nos middlewares. Occupons nous du dashboard de traefik, après tout nous sommes dans le docker-compose de traefik.&lt;/p>
&lt;p>D&amp;rsquo;abord on active le service et on indique sur quel réseau on écoute&lt;/p>
&lt;pre>&lt;code> - &amp;quot;traefik.enable=true&amp;quot;
- &amp;quot;traefik.docker.network=traefik&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Après on crée une entrée pour le protocole http en utilisant nos midlewares (un jour je trouverai le moyen de faire un vhost http générique qui redirigera sur https sans avoir à un définir pour chaque service )&lt;/p>
&lt;pre>&lt;code> - &amp;quot;traefik.http.routers.traefik-insecure.entrypoints=http&amp;quot;
- &amp;quot;traefik.http.routers.traefik-insecure.rule=Host(`traefik.example.com`)&amp;quot;
- &amp;quot;traefik.http.routers.traefik-insecure.middlewares=https_redirect,compress,security-headers&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Enfin on crée une entrée pour le protocole https&lt;/p>
&lt;pre>&lt;code> - &amp;quot;traefik.http.routers.traefik.entrypoints=https&amp;quot;
- &amp;quot;traefik.http.routers.traefik.tls=true&amp;quot;
- &amp;quot;traefik.http.routers.boot.tls.options=default&amp;quot;
- &amp;quot;traefik.http.routers.traefik.rule=Host(`traefik.example.com`)&amp;quot;
- &amp;quot;traefik.http.services.traefik.loadbalancer.server.port=8080&amp;quot;
- &amp;quot;traefik.http.routers.traefik.middlewares=auth,compress,security-headers&amp;quot;
&lt;/code>&lt;/pre>
&lt;p>Une fois le tout déployé, on peut aller tester le résultat sur &lt;a href="https://www.ssllabs.com/ssltest/">ssllabs&lt;/a> et &lt;a href="https://securityheaders.com/">securityheaders&lt;/a>.&lt;/p>
&lt;p>Voici mon résultat sur ssllabs:&lt;/p>
&lt;p>&lt;img src="ssllabs-result.png" alt="Résultat SSLLabs">&lt;/p></description></item><item><title>Déploiement d'un site Hugo sur Gitlab et Github</title><link>https://www.reslinger.net/2019/09/d%C3%A9ploiement-dun-site-hugo-sur-gitlab-et-github/</link><pubDate>Tue, 03 Sep 2019 08:51:19 +0200</pubDate><guid>https://www.reslinger.net/2019/09/d%C3%A9ploiement-dun-site-hugo-sur-gitlab-et-github/</guid><description>&lt;p>On y pense pas toujours, mais le temps de maintenance d&amp;rsquo;un site peu vite prendre du temps. Bien qu&amp;rsquo;avec un Wordpress ça se fasse simplement, il faut toujours suivre son site. L&amp;rsquo;avantage des générateurs de site statiques est que la maintenance disparait. Alors comme beaucoup aujourd&amp;rsquo;hui, &lt;a href="https://www.reslinger.net/2017/10/hello-website-powered-by-lektor/">j&amp;rsquo;en ai adopté un il y a 2 ans&lt;/a> environ. Tout fonctionneait parfaitement même si le thème par défaut que je n&amp;rsquo;avais pas modifier ne me plaisais pas trop.&lt;/p>
&lt;p>Aujourd&amp;rsquo;hui, je vais vous parler de &lt;a href="https://gohugo.io/">Hugo&lt;/a>. Ce générateur de site static est à la mode mais ce n&amp;rsquo;est pas la seule raison de mon changement. Je suis un peu alergique au modification d&amp;rsquo;un système d&amp;rsquo;exploitation autrement que par son gestionnaire de paquet (à la rigueur j&amp;rsquo;accepte la compilation de source installé dans /usr/local/). J&amp;rsquo;ai donc exclu lektor à cause de pip.&lt;/p>
&lt;p>Je passerai volontairement sur &lt;a href="https://gohugo.io/getting-started/installing">l&amp;rsquo;installation&lt;/a> et la &lt;a href="https://gohugo.io/getting-started/quick-start/">création d&amp;rsquo;un premier site&lt;/a> qui sont bien documentés.&lt;/p>
&lt;p>L&amp;rsquo;article du jour concerne le déploiement continu (alias CD) du site sur &lt;a href="https://about.gitlab.com/product/pages/">Gitlab Pages&lt;/a> et &lt;a href="https://pages.github.com/">Github Page&lt;/a> depuis Gitlab CI.&lt;/p>
&lt;p>Pour un déploiement simple sur Gitlab, il n&amp;rsquo;y a pas grand chose à faire pour que ça fonctionne. L&amp;rsquo;exemple de .gitlab-ci.yml proposé sur le &lt;a href="https://gohugo.io/hosting-and-deployment/hosting-on-gitlab/">site de hugo&lt;/a> fonctionne parfaitement.&lt;/p>
&lt;p>Pour un déploiement en simultané sur Github, il va nous faloir générer une pair de clé ssh dédiée pour l&amp;rsquo;opération. La commande suivante devrait nous permettre d&amp;rsquo;y parvenir :&lt;/p>
&lt;pre>&lt;code>ssh-keygen -t ed25519 -b 256 -f github
&lt;/code>&lt;/pre>
&lt;p>Le contenu de la clé publique sera utiliser pour créer une nouvelle clé de déploiement dans les préférences du projet Github :&lt;/p>
&lt;p>&lt;img src="Github-ssh.png" alt="Ajout d&amp;rsquo;une clé dans un projet Github">&lt;/p>
&lt;p>Le contenu de la clé privée sera, lui, utilisé comme variable dans l&amp;rsquo;intégration et livraison continue du projet Gitlab au coté de l&amp;rsquo;email et du login :&lt;/p>
&lt;p>&lt;img src="Gitlab-CI-Variable.png" alt="Ajout de la clé privée dans un projet Gitlab">&lt;/p>
&lt;p>Maintenant il ne reste plus qu&amp;rsquo;à rajouter quelques lignes dans la section script du fichier .gitlab-ci.yml pour récupérer le dépôt depuis Github, nétoyer le répertoire et pushé le tout un fois le build fait.
Cela nous donne quelque chose comme ceci:&lt;/p>
&lt;pre>&lt;code>pages:
script:
- mkdir -m 700 ~/.ssh; echo &amp;quot;$GITHUB_KEY&amp;quot; &amp;gt; ~/.ssh/id_ed25519; chmod 600 ~/.ssh/id_ed25519; ssh-keyscan -t rsa github.com &amp;gt;&amp;gt; ~/.ssh/known_hosts
- git clone git@github.com:${MY_NAME}/project_name.github.io.git public
- rm -fr public/*
- hugo
- git config --global user.email &amp;quot;$MY_EMAIL&amp;quot;; git config --global user.name &amp;quot;$MY_NAME&amp;quot;
- cd public; git add -A; git commit -m &amp;quot;Auto update&amp;quot;; git push --force
artifacts:
paths:
- public
only:
- master
&lt;/code>&lt;/pre>
&lt;p>Edit: La synchronisation fonctionne bien et restera en l&amp;rsquo;état pour le moment, github gère son certificat let&amp;rsquo;s encrypt lui même, ce qui ne permet pas de faire du loadbalancing pour le moment.&lt;/p></description></item><item><title>Chiffrer son homedir sous Ubuntu</title><link>https://www.reslinger.net/2018/02/chiffrer-son-homedir-sous-ubuntu/</link><pubDate>Tue, 06 Feb 2018 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2018/02/chiffrer-son-homedir-sous-ubuntu/</guid><description>&lt;p>Bonjour,&lt;/p>
&lt;p>J&amp;rsquo;avais sous la main une machine sous Ubuntu Xenial (16.04 LTS) où je voulais activer le chiffrage du homedir car je ne l&amp;rsquo;avais pas fait durant l&amp;rsquo;installation du système. Pourquoi ? Simplement par ce que j&amp;rsquo;installe des systèmes sur disque chiffré. Je pensais alors que c&amp;rsquo;était suffisant.
La machine que j&amp;rsquo;ai voulu modifier est en fait une machine potentiellement partagée aujourd&amp;rsquo;hui, les besoins ont donc changés. Voyons tout de suite comment effectuer ces manipulations (après avoir fait une sauvegarde du homedir, il en va sans dire).&lt;/p>
&lt;p>Pour l&amp;rsquo;installation des paquets :&lt;/p>
&lt;pre>&lt;code>apt install ecryptfs-utils libpam-mount
&lt;/code>&lt;/pre>
&lt;p>Pour l&amp;rsquo;encryption du homedir :&lt;/p>
&lt;pre>&lt;code>ecryptfs-migrate-home -u $MON_USER
&lt;/code>&lt;/pre>
&lt;p>Enfin, sans redémarrer la machine, il est recommandé de se connecter tout de suite à sa session pour vérifier le bon déroulé et y taper la commande suivante pour avoir le passe de récupération :&lt;/p>
&lt;pre>&lt;code>ecryptfs-migrate-home -u mon_user
&lt;/code>&lt;/pre>
&lt;p>L&amp;rsquo;opération de chiffrement étant validée, vous pourez supprimer le répertoire de sauvegarde réalisé dans le répertoire /home .&lt;/p>
&lt;p>Source utilisée: &lt;a href="https://doc.ubuntu-fr.org/ecryptfs">ecryptfs sur ubuntu-fr&lt;/a>&lt;/p></description></item><item><title>Hello Website powered by lektor</title><link>https://www.reslinger.net/2017/10/hello-website-powered-by-lektor/</link><pubDate>Sun, 22 Oct 2017 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2017/10/hello-website-powered-by-lektor/</guid><description>&lt;p>Bonjour tout le monde,&lt;/p>
&lt;p>Vous l&amp;rsquo;aurez peut être tous remarqué, le site à changé de tête. En fait, Je n&amp;rsquo;utilise plus &lt;a href="https://wordpress.org">Wordpress&lt;/a> comme moteur de blog bien qu&amp;rsquo;il est supporté mon site durant les 7 dernières années sur un serveur dédié. Évolution oblige, je suis passé sur &lt;a href="https://www.getlektor.com">lektor&lt;/a>, un générateur de site static basé sur python, et au déploiement automatique. Les anciens articles publiés sont réimportés, le déploiement automatique est opérationnel, le thème est encore à revoir.&lt;/p>
&lt;p>Il y aura donc encore des changements sur le site dans les prochains jours.&lt;/p></description></item><item><title>Windows en dual boot</title><link>https://www.reslinger.net/2015/07/windows-en-dual-boot/</link><pubDate>Wed, 01 Jul 2015 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2015/07/windows-en-dual-boot/</guid><description>&lt;p>Bonjour,&lt;/p>
&lt;p>J&amp;rsquo;utilise Linux la majeur partie de mon temps. Sur quelques machines, je suis en dual boot. Et par chez nous, nous changeons régulièrement d&amp;rsquo;heure pour suivre le soleil. Et avoir les deux systèmes qui mettent à jour la même horloge, et bien c&amp;rsquo;est la galère. Pour éviter les ennuies, je configure le BIOS de mes machines en UTC, et ce depuis des années. Je profite donc de ce billet pour donner les commandes windows à exécuter dans un terminal administrateur pour que Windows 10 calcule comme un grand son horloge local à partir d&amp;rsquo;une horloge BIOS en UTC.&lt;/p>
&lt;p>Voici les différentes étapes :&lt;/p>
&lt;p>Configuration de la base de regisre pour avoir l&amp;rsquo;heure bios en utc :&lt;/p>
&lt;pre>&lt;code>reg ADD HKLM\System\CurrentControlSet\Control\TimeZoneInformation /t REG_DWORD /v RealTimeIsUniversal /d 1
&lt;/code>&lt;/pre>
&lt;p>Synchroniser l&amp;rsquo;heure :&lt;/p>
&lt;pre>&lt;code>w32tm /config /update
&lt;/code>&lt;/pre>
&lt;p>Désactiver le service Windows Time service qui écrit l&amp;rsquo;heure à chaque arrêt du système sans regarder le registre :&lt;/p>
&lt;pre>&lt;code>sc config w32time start= disabled
&lt;/code>&lt;/pre>
&lt;p>Éventuellement, on peut installer un service ntp. Personnellement, mes sessions Windows ne sont plus assez longues depus bien longtemps pour avoir suffi des désagréments.&lt;/p></description></item><item><title>Console virsh</title><link>https://www.reslinger.net/2014/12/console-virsh/</link><pubDate>Wed, 03 Dec 2014 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2014/12/console-virsh/</guid><description>&lt;p>Bonjour,&lt;/p>
&lt;p>Aujourd&amp;rsquo;hui, rien de passionnant, juste un petit mémo pour l&amp;rsquo;entrer dans une machine virtuelle pilotée par libvirt, mais surtout le raccourcis pour en ressortir.&lt;/p>
&lt;p>Pour entrer :&lt;/p>
&lt;pre>&lt;code>virsh console VM
&lt;/code>&lt;/pre>
&lt;p>Pour sortir&lt;/p>
&lt;pre>&lt;code>Ctrl + ]
&lt;/code>&lt;/pre>
&lt;p>Bien sur, il faut que le système invité soit configuré pour avoir une console sur le port série.&lt;/p></description></item><item><title>Désactiver le choix du navigateur</title><link>https://www.reslinger.net/2014/08/d%C3%A9sactiver-le-choix-du-navigateur/</link><pubDate>Sun, 17 Aug 2014 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2014/08/d%C3%A9sactiver-le-choix-du-navigateur/</guid><description>&lt;p>Bonjour tout le monde.&lt;/p>
&lt;p>Si vous êtes comme moi à installer un Windows de temps en temps , alors vous avez dû aussi remarquer qu&amp;rsquo;à un moment donné une boite de dialogue apparaît demandant de choisir son navigateur. Sur une machine d&amp;rsquo;administration qui ne démarre qu&amp;rsquo;une fois par an, installer un autre navigateur qui sera de toute façon obsolète au démarrage suivant n&amp;rsquo;est pas forcément judicieux. La problématique qui se pose alors est de désactiver cette fameuse boite de dialogue.&lt;/p>
&lt;p>Pour de faire, il faut ajouter via un éditeur de base de registre, un Nouveau DWORD dans &amp;ldquo;HKEY_LOCAL_MACHINE\Software\BrowserChoice&amp;rdquo; du nom de &amp;ldquo;Enable&amp;rdquo;. Sa valeur sera 0 pour le désactiver, 1 pour le réactiver.&lt;/p>
&lt;p>Ensuite, la machine démarre plus vite 🙂&lt;/p></description></item><item><title>Migration d'un clone RHEL vers un autre (ou une RHEL)</title><link>https://www.reslinger.net/2014/07/migration-dun-clone-rhel-vers-un-autre-ou-une-rhel/</link><pubDate>Mon, 21 Jul 2014 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2014/07/migration-dun-clone-rhel-vers-un-autre-ou-une-rhel/</guid><description>&lt;p>Bonjour,&lt;/p>
&lt;p>Dans la petite famille des clones RedHat, CentOS est la distribution la plus connue. Pourtant, pendant un certain temps, après la sortie de la version 6 de Redhat, CentOS à été fortement critiqué pour ses releases tardives. A ce moment là, je suis aller tester d&amp;rsquo;autre distribution. Quelque mois plus tard, je me suis retrouvé avec une ClearOS et une RedHat en production, à coté de mes ScientificLinux.&lt;/p>
&lt;p>C&amp;rsquo;est bien beau, tout le monde était en version 6.x, mais ça fesait 3 dépôts à géré, dont un qui n&amp;rsquo;a jamais reçu de mise à jour. Soit. Les distributions étant compatible entre elle, une migration devait être possible.&lt;/p>
&lt;p>Pour ce faire, j&amp;rsquo;ai utilisé ce &lt;a href="http://marcet.technofil.fr/2011/09/22/migrer-de-centos-vers-scientific-linux/">premier lien&lt;/a> et ce &lt;a href="http://blog.famillecollet.com/post/2010/04/15/Migration-de-CentOS-5.4-vers-RHEL-5.5">second lien&lt;/a>.&lt;/p>
&lt;p>Voici pour info ce que j&amp;rsquo;ai tapé:&lt;/p>
&lt;pre>&lt;code>wget http://ftp.scientificlinux.org/linux/scientific/6.1/x86_64/os/Packages/{redhat-logos-60.0.14-2.sl6.4.noarch.rpm,redhat-lsb-4.0-3.el6.x86_64.rpm,redhat-lsb-graphics-4.0-3.el6.x86_64.rpm,redhat-lsb-printing-4.0-3.el6.x86_64.rpm,sl-indexhtml-6-2.sl6.5.noarch.rpm,sl-release-6.1-2.x86_64.rpm,sl-release-notes-6.1-1.noarch.rpm,yum-3.2.29-17.el6.noarch.rpm,yum-metadata-parser-1.1.2-16.el6.x86_64.rpm,yum-rhn-plugin-0.9.1-26.el6.noarch.rpm,yum-utils-1.1.30-6.el6.noarch.rpm}
rpm -e --nodeps $(rpm -qa clearos\* redhat\* centos\* yum\* | sort)
rpm -ivh *
yum clean all &amp;amp;&amp;amp; yum reinstall $(rpm -qa --qf &amp;quot;%{NAME} %{VENDOR}\n&amp;quot; | egrep '(ClearFoundation|Red Hat, Inc.)' | cut -d\ -f1)
yum update
yum clean all &amp;amp;&amp;amp; yum --releasever=6x update
&lt;/code>&lt;/pre>
&lt;p> &lt;/p></description></item><item><title>Putty et les tunnels imbriqués</title><link>https://www.reslinger.net/2014/07/putty-et-les-tunnels-imbriqu%C3%A9s/</link><pubDate>Mon, 21 Jul 2014 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2014/07/putty-et-les-tunnels-imbriqu%C3%A9s/</guid><description>&lt;p>Bonjour,&lt;/p>
&lt;p>Pour ceux qui n&amp;rsquo;ont pas toujours le choix de leurs outils, il faut arriver à retrouver ses habitudes avec les outils fournis.&lt;/p>
&lt;p>Dans mon cas, j&amp;rsquo;utilise Linux au quotidien, et au travail je suis souvent avec un poste sous Windows. Le système étant radicalement différent, les outils le sont aussi. Avec openssh, il est facile de modifier sont fichier ~/.ssh/config pour créer des connexions ssh avec rebond de manière transparente. Avec Putty, c&amp;rsquo;est un peu plus délicat, mais une fois que l&amp;rsquo;on a la méthode, ça roule.&lt;/p>
&lt;p>La méthode, c&amp;rsquo;est de définir l&amp;rsquo;hôte intermédiaire dans la page proxy avec les informations qui vont bien. Pour &amp;ldquo;proxy command&amp;rdquo;, un copie/colle de ce qui suit devrait suffir:&lt;/p>
&lt;pre>&lt;code>plink -P %proxyport -pw %pass %user@%proxyhost -C -X -nc %host:%port\n
&lt;/code>&lt;/pre>
&lt;p>&lt;img src="Putty_confproxy.png" alt="Putty_confproxy">&lt;/p></description></item><item><title>OpenVZ sur une RedHat 6</title><link>https://www.reslinger.net/2012/06/openvz-sur-une-redhat-6/</link><pubDate>Thu, 28 Jun 2012 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2012/06/openvz-sur-une-redhat-6/</guid><description>&lt;p>Bonjour tout le monde,&lt;/p>
&lt;p>Aujourd&amp;rsquo;hui, je vous propose de mettre en place un système de virtualisation utilisable sur tout type de matériel. En fait, dans notre cas du jour, il ne s&amp;rsquo;agit pas exactement de virtualisation mais plutôt de conteneur. L&amp;rsquo;avantage, c&amp;rsquo;est que ça fonctionne sur des machines qui n&amp;rsquo;ont pas forcément les instructions de virtualisation matériel. Pour ceux qui ne savent pas ce qu&amp;rsquo;est un conteneur (dans ce contexte), je vais faire un petit rappel.&lt;/p>
&lt;p>Le conteneur permet de faire des machines virtuelles, mais celles ci n&amp;rsquo;auront pas un espace complet réservé comme sur d&amp;rsquo;autre système de virtualisation car pour le système hôte et les invités, il s&amp;rsquo;agit du même noyau. Cela implique donc différente chose, à commencer par des performance élevée car il y a moins d&amp;rsquo;étape entre l&amp;rsquo;application d&amp;rsquo;une machine virtuelle et le matériel (disque, mémoire, cpu, &amp;hellip;). En contre parti, comme on a qu&amp;rsquo;un seul noyau, les invités sont donc du même type que l&amp;rsquo;hôte (Linux &amp;ndash; Linux, Windows &amp;ndash; Windows).&lt;/p>
&lt;p>Ici, nous ne verrons que la parti Linux. Le projet que nous allons utiliser s’appelle OpenVZ. Bien sûr, il y en a d&amp;rsquo;autre qui existe.&lt;/p>
&lt;p>Nôtre système hôte sera un clone d&amp;rsquo;une RedHat 6 (Scientific Linux 6).&lt;/p>
&lt;p>L&amp;rsquo;installation sur ce genre de système est vraiment très simple.&lt;/p>
&lt;p>Récupérez en premier la définition du dépôt :&lt;/p>
&lt;pre>&lt;code>cd /etc/yum.repos.d &amp;amp;&amp;amp; wget http://download.openvz.org/openvz.repo &amp;amp;&amp;amp; \
rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ
&lt;/code>&lt;/pre>
&lt;p>Ensuite, modifier le fichier openvz.repo pour désactiver le dépot redhat 5 et activer celui de la redhat 6.&lt;/p>
&lt;p>Enfin, installez le kernel:&lt;/p>
&lt;pre>&lt;code>yum install vzkernel-firmware vzkernel vzctl vzquota
&lt;/code>&lt;/pre>
&lt;p>Pour que OpenVZ soit fonctionnel, il reste juste un peu de configuration. Désactiver SELinux (/etc/selinux/config) et mettez dans le fichier /etc/sysctl.conf ce qui suit:&lt;/p>
&lt;pre>&lt;code># On Hardware Node we generally need
# packet forwarding enabled and proxy arp disabled
net.ipv4.ip_forward = 1
net.ipv6.conf.default.forwarding = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.default.proxy_arp = 0
# Enables source route verification
net.ipv4.conf.all.rp_filter = 1
# Enables the magic-sysrq key
kernel.sysrq = 1
# We do not want all our interfaces to send redirects
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0
&lt;/code>&lt;/pre>
&lt;p>Après un redémarrage sur le nouveau noyau, vous voilà prêt à créer et démarrer vos machines virtuelles.&lt;/p></description></item><item><title>Plugins et Seamonkey</title><link>https://www.reslinger.net/2011/10/plugins-et-seamonkey/</link><pubDate>Sun, 16 Oct 2011 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2011/10/plugins-et-seamonkey/</guid><description>&lt;p>Bonjour,Depuis quelque temps maintenant, la fondation mozilla publie une nouvelle version de firefox beaucoup plus fréquement, et par conséquant seamonkey aussi. Bien que cela permet d&amp;rsquo;apporter de nouvelles fonctionnalitées plus rapidement, ça pose d&amp;rsquo;autre problème notament au niveau des extentions.&lt;/p>
&lt;p>Par exemple la google bare.&lt;/p>
&lt;p>Pour que cette bare fonctionne toujours sur mon navigateur, je dézipe le fichier {6b6601f1-361e-4b9f-bb6d-f8305000e4f6}.xpi présent dans le répertoire extensions et modifie le champ &amp;ldquo;maxVersion&amp;rdquo; dans la section Seamonkey du fichier install.rdf. Ensuite, il suffit de refaire le zip et de relancer le navigateur et tout devrait être bon.&lt;/p>
&lt;p>Pour toute extention, une simple recherche texte dans le fichier extensions.rdf vous permettra de retrouver le nom du fichier .xpi ou du répertoire contenant l&amp;rsquo;extention. La procédure ensuite reste la même.&lt;/p></description></item><item><title>Wifi sous OpenWrt limité à 65Mbs ?</title><link>https://www.reslinger.net/2011/09/wifi-sous-openwrt-limit%C3%A9-%C3%A0-65mbs/</link><pubDate>Sat, 17 Sep 2011 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2011/09/wifi-sous-openwrt-limit%C3%A9-%C3%A0-65mbs/</guid><description>&lt;p>J&amp;rsquo;ai dans un coin une petite machine de chez PC Engines, une WARP 1.D. Il y a quelques jours, j&amp;rsquo;y ai mis OpenWrt et un carte wifi N. Malheureusement, le débit wifi plafonnait à 65 Mb/s malgrès une lageur de bande de 40MHz.&lt;/p>
&lt;p>En fait, la manipulation qui va bien est de se connecter en ssh et taper les commandes suivantes :&lt;/p>
&lt;pre>&lt;code>uci set wireless.radio0.noscan=1
uci commit
reboot
&lt;/code>&lt;/pre>
&lt;p>Depuis, mon wifi sur ce point d&amp;rsquo;accès est maintenant de 300Mb/s. Bon, j&amp;rsquo;ai encore beaucoup de chose à tester.&lt;/p>
&lt;p>&lt;a href="https://forum.openwrt.org/viewtopic.php?pid=137298">source&lt;/a>&lt;/p></description></item><item><title>Gestion du cache avec Apache</title><link>https://www.reslinger.net/2011/05/gestion-du-cache-avec-apache/</link><pubDate>Thu, 26 May 2011 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2011/05/gestion-du-cache-avec-apache/</guid><description>&lt;p>Après l&amp;rsquo;optimisation d&amp;rsquo;Apache par la compression de la sortie, nous avons aussi la possibilité de fixer les valeurs pour le cache du navigateur client. De ce fait, dès le second click de souris du visiteur, le nombre de requêtes sur le serveur chutera et soulagera d&amp;rsquo;autant le serveur.&lt;/p>
&lt;p>La configuration du cache passe simplement par l&amp;rsquo;ajout du bloque suivant dans le fichier httpd.conf:&lt;/p>
&lt;pre>&lt;code># Turn on Expires and set default to 0
ExpiresActive On
ExpiresDefault A0
# Set up caching on media files for 1 year (forever?)
&amp;lt;FilesMatch &amp;quot;\.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav)$&amp;quot;&amp;gt;
ExpiresDefault A29030400
Header append Cache-Control &amp;quot;public&amp;quot;
&amp;lt;/FilesMatch&amp;gt;
# Set up caching on media files for 1 week
&amp;lt;FilesMatch &amp;quot;\.(gif|jpg|jpeg|png|swf|js|css)$&amp;quot;&amp;gt;
ExpiresDefault A604800
Header append Cache-Control &amp;quot;public&amp;quot;
&amp;lt;/FilesMatch&amp;gt;
# Set up 2 Hour caching on commonly updated files
&amp;lt;FilesMatch &amp;quot;\.(xml|txt|html)$&amp;quot;&amp;gt;
ExpiresDefault A7200
Header append Cache-Control &amp;quot;proxy-revalidate&amp;quot;
&amp;lt;/FilesMatch&amp;gt;
# Force no caching for dynamic files
&amp;lt;FilesMatch &amp;quot;\.(php|cgi|pl|htm)$&amp;quot;&amp;gt;
ExpiresActive Off
Header set Cache-Control &amp;quot;private, no-cache, no-store, proxy-revalidate, no-transform&amp;quot;
Header set Pragma &amp;quot;no-cache&amp;quot;
&amp;lt;/FilesMatch&amp;gt;
&lt;/code>&lt;/pre>
&lt;p>Voir aussi &lt;a href="http://www.askapache.com/htaccess/speed-up-your-site-with-caching-and-cache-control.html">ce lien&lt;/a>&lt;/p></description></item><item><title>Optimisation de WordPress</title><link>https://www.reslinger.net/2011/04/optimisation-de-wordpress/</link><pubDate>Fri, 08 Apr 2011 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2011/04/optimisation-de-wordpress/</guid><description>&lt;p>Depuis quelques temps, je me suis occupé de l&amp;rsquo;optimisation de mon wordpress. Pas de modification de code, seulement l&amp;rsquo;installation de plugins et de la configuration.
Les plugins que j&amp;rsquo;ai installé sont:&lt;/p>
&lt;ul>
&lt;li>
&lt;p>Head Cleaner: Head Cleaner permet la minification et la concaténation des CSS et JS. Et il le fait bien&lt;/p>
&lt;/li>
&lt;li>
&lt;p>W3 Total Cache: Enfin, W3 Total Cache permet la mise en cache des pages. Il faut penser à désactiver la partie minification car elle est déjà prise en charge par Head Cleaner et WP-Minifier.&lt;/p>
&lt;/li>
&lt;/ul>
&lt;p>J&amp;rsquo;avais aussi testé Theme Minifier pour mimifier les thémes, mais Head Cleaner prend la minification du thème à la volée. En plus, Theme Minifier casse la traduction du thème.&lt;/p>
&lt;p>Enfin bref, après de nombreux test et pas mal de temps, j&amp;rsquo;obtiens un beau résultat sur les sites comme &lt;a href="https://gtmetrix.com">gtmetrix.com&lt;/a>. Je vous laisse juger du résultat par vous même.&lt;/p>
&lt;p>&lt;a href="gtmetrix-final.jpg" title="Taille Originale">&lt;img src="gtmetrix-final-300x241.jpg" alt="gtmetrix-final">&lt;/a>&lt;/p></description></item><item><title>Optimisation Apache par compression</title><link>https://www.reslinger.net/2011/01/optimisation-apache-par-compression/</link><pubDate>Mon, 24 Jan 2011 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2011/01/optimisation-apache-par-compression/</guid><description>&lt;p>Aujourd&amp;rsquo;hui, un petit peu de configuration dans Apache pour activé la compression des pages. La compression des pages permet de réduire la quantité de données à  transférer , la bande passante s&amp;rsquo;en retrouve soulagée ainsi que le temps de transfert (normale, il y a moins de données).&lt;/p>
&lt;p>Pour y arriver, il faut contrôler la présence des modules mod_deflate.so et mod_headers.so dans le répertoire des modules d&amp;rsquo;apache. S&amp;rsquo;ils sont présent, nous n&amp;rsquo;avons qu&amp;rsquo;un peu de configuration à  faire.&lt;/p>
&lt;p>Dans le répertoire conf.d, il faut créé (ou modifier) le fichier mod_deflate.conf pour y inclure le contenu suivant:&lt;/p>
&lt;pre>&lt;code>&amp;lt;Location /&amp;gt;
# Ajoute un filtre
SetOutputFilter DEFLATE
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
# Ne pas compresser les images
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary
Header append Vary User-Agent env=!dont-vary
&amp;lt;/Location&amp;gt;
&lt;/code>&lt;/pre>
&lt;p>Ensuite, il ne reste plus qu&amp;rsquo;à  ajouter la ligne:&lt;/p>
&lt;pre>&lt;code>SetOutputFilter DEFLATE
&lt;/code>&lt;/pre>
&lt;p>dans chacuns des vhosts où l&amp;rsquo;on veut activer la compression des pages.&lt;/p></description></item><item><title>Installation d'un terminal web</title><link>https://www.reslinger.net/2010/12/installation-dun-terminal-web/</link><pubDate>Sun, 19 Dec 2010 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2010/12/installation-dun-terminal-web/</guid><description>&lt;p>Dans cet article, nous allons installer un terminal en mode web. À quoi celà  peut servir ? Ben à  avoir un accès externe pour aller voir des configurations par exemple lorsque le protocole n&amp;rsquo;est pas authorisé vers l&amp;rsquo;extérieur pour des raisons de sécurité. Ce terminal n&amp;rsquo;étant qu&amp;rsquo;une page web, il est impossible de faire transiter autre chose que ce qui s&amp;rsquo;affiche dans la fenêtre du terminal. Donc pas de transfert de fichiers ni de tunnel.&lt;/p>
&lt;p>Pour l&amp;rsquo;installation, il suffit de taper la commande suivante :&lt;/p>
&lt;pre>&lt;code>yum install Ajaxterm
&lt;/code>&lt;/pre>
&lt;p>Puis pour l&amp;rsquo;activer,&lt;/p>
&lt;pre>&lt;code>service ajaxterm start
chkconfig ajaxterm on
&lt;/code>&lt;/pre>
&lt;p>Enfin, pour pouvoir y accéder, il faut rajouter ces lignes dans le vhost d&amp;rsquo;apache:&lt;/p>
&lt;pre>&lt;code>ProxyPass /ajaxterm/ http://localhost:8022/
ProxyPassReverse /ajaxterm/ http://localhost:8022/
&lt;/code>&lt;/pre>
&lt;p>Si le titre ne vous plait pas, vous pouvez le modifier via un sed par exemple dans le fichier /usr/share/ajaxterm/ajaxterm.html :&lt;/p>
&lt;pre>&lt;code>sed 's|\(&amp;lt;title&amp;gt;\)Ajaxterm\(&amp;lt;/title&amp;gt;\)|\1Nouveau Titre\2|' -i /usr/share/ajaxterm/ajaxterm.html
&lt;/code>&lt;/pre></description></item><item><title>exemple de conf apache + mod_proxy + awstat</title><link>https://www.reslinger.net/2010/12/exemple-de-conf-apache--mod_proxy--awstat/</link><pubDate>Tue, 14 Dec 2010 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2010/12/exemple-de-conf-apache--mod_proxy--awstat/</guid><description>&lt;pre>&lt;code>RedirectTemp /statistiques/index.html http://www.site.net/awstats/awstats.pl?config=www.site.net
&amp;lt;VirtualHost *:80&amp;gt;
ServerName www.mon-site.fr
ProxyRequests Off
##ProxyPreserveHost Off|On
#Header add Set-Cookie &amp;quot;ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/&amp;quot; env=BALANCER_ROUTE_CHANGED
&amp;lt;Proxy balancer://mycluster&amp;gt;
BalancerMember http://www1.mon-site.fr/
##BalancerMember http://192.168.1.xxx:80
#BalancerMember http:// route=1
#BalancerMember http:// route=2
#ProxySet stickysession=ROUTEID
&amp;lt;/Proxy&amp;gt;
&amp;lt;Proxy balancer://static&amp;gt;
BalancerMember http://static.mon-site.fr/
&amp;lt;/Proxy&amp;gt;
ProxyPass /images/ balancer://static/images/
ProxyPassReverse /images/ balancer://static/images/
ProxyPass /include/ balancer://static/include/
ProxyPassReverse /include/ balancer://static/include/
ProxyPass /script/ balancer://static/script/
ProxyPassReverse /script/ balancer://static/script/
ProxyPass / balancer://mycluster
ProxyPassReverse / balancer://mycluster
&amp;lt;/VirtualHost&amp;gt;
# SSLProxyEngine On
# ProxyPass /wp-admin !
# ProxyPass / https://www.site.net/
# ProxyPassReverse / https://www.site.net/
# ProxyRequests off
# ProxyReceiveBufferSize 8192
# ProxyIOBufferSize 262144
#
# Directives to allow use of AWStats as a CGI
#
Alias /awstatsclasses &amp;quot;/usr/local/awstats/wwwroot/classes/&amp;quot;
Alias /awstatscss &amp;quot;/usr/local/awstats/wwwroot/css/&amp;quot;
Alias /awstatsicons &amp;quot;/usr/local/awstats/wwwroot/icon/&amp;quot;
ScriptAlias /awstats/ &amp;quot;/usr/local/awstats/wwwroot/cgi-bin/&amp;quot;
#
# This is to permit URL access to scripts/files in AWStats directory.
#
&amp;lt;Directory &amp;quot;/usr/local/awstats/wwwroot&amp;quot;&amp;gt;
Options None
AllowOverride None
Order deny,allow
Deny from all
Allow from xx.xx.xx.xx
&amp;lt;/Directory&amp;gt;
&amp;lt;/VirtualHost&amp;gt;
&lt;/code>&lt;/pre></description></item><item><title>Bonjour tout le monde !</title><link>https://www.reslinger.net/2010/11/bonjour-tout-le-monde/</link><pubDate>Fri, 26 Nov 2010 00:00:00 +0000</pubDate><guid>https://www.reslinger.net/2010/11/bonjour-tout-le-monde/</guid><description>&lt;p>Bienvenue sur mon site. Sa mise en place sera progressive et contiendra essentiellement des données techniques. Pourquoi? Parce que je suis administrateur et comme tout administrateur, je réutilise les briques que j&amp;rsquo;ai déjà utilisé. Par conséquent, ce site contiendra des exemples de configuration de logiciels, des infrastructures, des liens et autre idées. Ce site se complètera avec le temps.&lt;/p>
&lt;p>Bonne navigation.&lt;/p></description></item></channel></rss>