Startup Script S3QL pour OVH

L’objectif est de monter un conteneur d’objet OVH, sur une machine debian. Pour cela on va utiliser l’utilitaire s3ql le dépôt est ici: https://bitbucket.org/nikratio/s3ql

Installation de s3ql

Sur debian, un petit:

sudo apt install s3ql

Et le tour est joué.

Configuration du montage

Ensuite c’est avec OVH, que cela se passe la doc est bien faite: https://www.ovh.com/fr/g1908.monter_un_conteneur_dobjet_avec_s3ql

Pour ma part les commandes suivante me sont très utile. J’utilise un serveur seafile, les fichiers sont alors stocké dans le conteneur.

Cas pratique pour un serveur seafile

Monter le conteneur, avec les droits pour un utilisateur seafile:

sudo -u seafile mount.s3ql --allow-other --authfile /home/seafile/s3qlcredentials.txt swiftks://auth.cloud.ovh.net/GRA1:seafile /mnt/ctn-seafile/

Parfois un peut de maintenance est nécessaire:

sudo fsck.s3ql --authfile /home/seafile/s3qlcredentials.txt swiftks://auth.cloud.ovh.net/GRA1:seafile

Conclusion

Je manque de vision sur le système, mais dans la pratique je dois avouer que je ne recommanderais pas cette architecture pour un système en production. D’ailleurs ce n’est pas très recommandé par OVH (cf. la doc). De plus je me retrouve avec des corruptions de donné, et je suis contraint d’utiliser fsck tan au niveau de seafile, que de s3ql.

NOTE: en cas d’arrêt de la machine il faudrait d’abord couper seafile, puis démonter le dossier s3ql. Même chose au démarrage: on monte le dossier avec s3ql, puis démarrage du serveur seafile. Je mettrait à jour ce poste dès que j’aurais trouvé la bonne manière de faire.

Tunnel SSH, IP Dynamique & proxy Firefox

Configurer un tunnel SSH sur un poste client, puis le proxy Firefox

Quand on bosse avec des freelances, qui se trouvent à différents endroits du monde leur accès à internet peut-être plus ou moins aléatoire. En ce moment je rencontre le problème suivant:

Nous utilisant un service en s’appuyant sur leur API. Mais l’accès au différentes ressources est restreinte selon l’IP cliente. Pour peu que l’on se trouve derrière une IP dynamique et cela devient problématique…

Au moin deux solutions peuvent être mise en oeuvre pour contourner le problème:

  • Utilisation d’un VPN
  • Utilisation d’un Tunnel SSH

Le choix a été fait d’utiliser un tunnel SSH, car plus simple, selon moi, à mettre en œuvre, surtout si le besoin est de fixer l’adresse IP de la machine cliente. L’installation est simple pour le client, un client ssh est disponible sur une machine Linux, et l’utilitaire putty sous Windows permet de faire cela simplement. Le tunnel SSH créer un proxi local sur la machine cliente client convient de préciser au programme dont on souhaite qu’il utilise le tunnel

Configuration du tunnel SSH

Configuration du tunnel SSH sous Windows:

Récupérer putty, et configurer une connexion SSH classique:

  • Host Name (or IP adress)
  • Port si le serveur SSH n’écoute pas sur le port 22

Howto:tunnel_ssh_avec_putty [Fig. 1]
Configuration tunnel SSH putty étape 1
Ensuite se rendre dans Connection > SSH > Tunnels

  • Source Port, une valeur arbitraire mais doit être libre sur la machine cliente
  • Destination, identique à Host Name, préciser le port si différent de 22 (après les deux points)
  • Et enfin choisir Dynamique

howto_putty_ssh_tunnel3
Configuration tunnel SSH putty étape 2

Pour finir Cliquez sur le bouton ADD pour ajouter le tunnel. Pour ouvrir le tunnel cliquer sur Open.

Configuration du Tunnel sous Linux

Avec ssh:

ssh -D1080 user@destination:port

Le port est facultatif si égal à 22.

Le paramètre -D est pour définir une connexion dynamique.

Enfin 1080, est le Source Port, une valeur arbitraire pourvu que ce soit un port libre la machine cliente.

Configuration du proxy sous Firefox

Une fois le tunnel établi il se comporte comme un proxy sur la machine locale: exemples de configuration avec Firefox:

proxy-firefox-tunnel-ssh-1
Configuration Proxy Firefox Etape 1

Se rendre dans Paramètre > Avancé > Réseau, dans la section Connexion cliquer sur paramètres:

proxy-firefox-tunnel-ssh-2
Configuration Proxy Firefox Etape 2

Sélectionner « Configuration Manuelle du Proxy« , dans Hôte SOCKS saisissez « localhost« , SOCKS v5 et dans le champ Port mettre Source Port précédement défini.

Puis valider par OK. Tant que le proxy sera actif toute les connesxions initialiser par Firefox passerons désormais par le tunnel SSH.

Elle est pas belle la vie 🙂

Deux documents racine pour un vhost Apache en fonction de l’IP distante

Petite astuce de configuration apache quand on fait une maintenance sur un site. Bien sur on peut gérer l’affichage d’une page maintenance via le site. Mais cela ajoute des règles de re-directions qui peuvent interférer avec le site dont on assure la maintenance. L’opération de maintenance que j’ai dû faire aujourd’hui implique la gestion de re-direction. Donc, j’ai assuré l’affichage de la page de maintenance par le serveur Apache et non par le site web en question.

Voici la configuration utilisée:

<VirtualHost *:80>
  ServerAdmin webmaster@example.com
  ServerAlias *.example.com

  DocumentRoot /var/www/monsite-maintenance

	RewriteEngine On
	RewriteCond %{REMOTE_ADDR} xxx.xxx.xxx.xxx // L'ip de mon post de dev
	RewriteRule ^(.*)$ /var/www/monsite-maintenance/$1

	
    Options -Indexes +FollowSymLinks +MultiViews
    AllowOverride all
    Order allow,deny
	  allow from all
  

	
		Options -Indexes +FollowSymLinks +MultiViews
		AllowOverride all
		Order allow,deny
		allow from all
	


source: http://serverfault.com/questions/336586/apache-client-ip-based-documentroot

Et l’astuce du soir, pour tester sa configuration apache avant un reload ou un restart:

apachectl configtest