jeudi 27 octobre 2011

Memo OpenVZ

En ce moment je travaille beaucoup avec OpenVZ.

C'est un outil vraiment intéressant, très performant et très agile.

Le wiki http://wiki.openvz.org est très bien fait et pleins de ressources.

Ci-dessous, les astuces ou commandes qui me servent régulièrement.

Avoir un horaire different entre le VPS et les VE.

Dans la conf du VE, ajouter :
CAPABILITY="SYS_TIME:on"
Puis charger le fuseau horaire souhaité, ex: export TZ=America/Bogota
Ensuite mettre a jour la date en utilisant ntpdate ou en fixant la date directement.

Installer VZDump pour faire un backup

http://chrisschuld.com/2009/11/installing-vzdump-for-openvz-on-centos/

Préparer un serveur pour exploiter les capacités physiques

Utiliser vzsplit pour diviser les ressources phyisiques en -n partie vers un fichier de config -f config.prod
Ensuite il faut utiliser ce fichier de config pour creer des les VE

Au secours, je ne peux plus rentrer dans mon serveur virtuel

Vous pouvez ne plus rentrer dans votre VE, ni par SSH ni par "vzctl enter"
vzctl enter 101
enter into VE 101 failed
Unable to open pty: No such file or directory


Si vous êtes sous Redhat ou equivalent, créez les devices manquants
vzctl exec VEID /sbin/MAKEDEV pty
vzctl exec VEID /sbin/MAKEDEV tty
vzctl enter VEID


Pour regler le problème de manière permanente
Modifier le fichier /etc/rc.sysinit de votre VPS.
Commenter la ligne
#/sbin/start_udev 
Ajouter les lignes suivantes après /sbin/start_udev
/sbin/MAKEDEV tty
/sbin/MAKEDEV pty



Si vous êtes sur un Debian ou équivalent

vzctl exec veid update-rc.d -f udev remove
vzctl restart veid

Le container est bloqué

Si vous recevez le message suivant quand vous essayer d'arrêter le VE
[root@server ~]# vzctl stop 101 Container already locked
Solution:
  • Supprimer le fichier lock
[root@server ~]# rm /vz/lock/101.lck 
rm: remove regular file `/vz/lock/101.lck'? y
  • Supprimer le checkpoint
[root@server ~]# vzctl chkpnt 104 --kill 
Killing...

jeudi 26 mai 2011

Proxy et configuration WPAD

Dernièrement je me suis escrimé à configurer et fignoler Squid et WPAD.

Jusqu'à présent j'avais toujours utilisé Squid en proxy transparent mais cette fois je ne voulais pas me placer entre le backbone et le FW.
J'ai donc configurer squid en proxy/gateway mais comment obliger tous les navigateurs à passer par lui ?

Ok, j'ai la GPO pour les postes du domaine mais les autres ? Les linux, les smartphone, ...
Solution WPAD (Web Proxy Autodiscovery Protocol).

Pour ce faire on place un petit proxy.pac ou wpad.dat.
Mais petite subtilité je souhaite que les accès aux ressources locales ne passent pas par le proxy.

Petite config :
function FindProxyForURL(url, host)
{
// variable strings to return
var proxy_yes = "PROXY 192.168.51.70:3128"; //Mon proxy
var proxy_no = "DIRECT";
if (isPlainHostName(host)) { return proxy_no; } //Ne pas utiliser le proxy pour les adresses locales comme http://intranet
if (shExpMatch(url, "localhost")) { return proxy_no; }
if (shExpMatch(url, "http://*.mondomain.com/*")) { return proxy_no; } //Ne pas utiliser le proxy pour les adresses en mondomain.com
if (shExpMatch(url, "http://192.168.*.*")) { return proxy_no; } //Ne pas utiliser le proxy pour le réseau 192.168.0.0
if (shExpMatch(url, "https://192.168.*.*")) { return proxy_no; } //Idem pour le https
if (shExpMatch(url, "http://127.0.0.1")) { return proxy_no; } //Idem pour le local
// Proxy anything else
return proxy_yes;
}
Et ça marche !


lundi 23 mai 2011

Configuration SQUID

Dans un environnement proxy squid et webservice full microsoft, je trouve cette erreur :
TCP_MISS/417

Visiblement un comportement inatendu du a un non respect de http 1.1

Pour contourner ce probleme ou modifie son code, jamais evident avec des developpeurs
http://social.msdn.microsoft.com/Forums/en-US/devdocs/thread/60cd6e6a-4157-4811-8ed3-1e46f9022ea8/

ou bien ajouter cette ligne a squid, beaucoup plus simple :

Add in squid.conf:
ignore_expect_100 on

http://www.squid-cache.org/Doc/config/ignore_expect_100/

jeudi 12 mai 2011

Mémo de SED

Pour commencer une configuration, par exemple celle de squid.
Je copie la conf d'orgine comme backup puis je la purge des commentaires, autrement je m'y retourve pas.
Pour supprimer toutes les lignes qui commencent par #
sed '/^\#/d' squid.conf > squid.conf.new
Puis pour supprimer toutes les lignes vide :
sed '/^$/d' squid.conf.new > squid.conf


mardi 3 mai 2011

Surveillance video Linux : Zoneminder

Aujourd'hui,

J'ai installé Zoneminder, je cherchais un outils pour surveiller toutes les cameras, gratuit et en version web.
Et là je trouve www.Zoneminder.com très complet avec beaucoup plus de possibilités que je n'imaginais : filtre, surveillance, etc ...

La documentation est très complète et un forum bien suivi.
La configuration est dense et pas toujours simple mais on s'en sort.

Bravo au projet.

vendredi 29 avril 2011

Authentification LDAP avec Zabbix

J'adore Zabbix, je trouve ca simple et puissant, en peu de temps il est possible de creer une supervision complete.

J'ai toujours voulu utiliser l'authentification LDAP mais sans jamais y parvenir, cette fois j'ai compris.
Zabbix reste parfois un peu bugge mais ca fonctionne, je vous en fait part.

L'authentifaction LDAP est definie dans le menu Administration/Authentification.

Default authentication
LDAP/HTTP/Internal, dans notre cas LDAP
LDAP Host
Votre serveur nom ou ip
Port
389 ou 636 en securise
Base DN
L'arboresence ou Zabbix va rechercher vos utilisateurs
Search attribute
Le plus simple : sAMAccountName
Bind DN*
Le lien vers l'utilisateur permettant la connexion (ex : CN=ldapread,CN=Users,DC=toto,DC=com
Bind Password*
Le password de cet utilisateur
LDAP Authentication Enabled
on coche la case


Test Authentication
Login
le login de test n'est pas modifiable, il faut creer le meme utilisateur que celui qui fait le lien avec le LDAP, dans mon exemple, j'ai cree un utilisateur ldapread
User Password
son password

Et ca fonctionne !

Ensuite il faut creer les utilisateurs souhaites, pas besoin de password c'est celui du LDAP :)

mardi 19 avril 2011