autossh & tsocks – Tunnel socks permanent

Le but va être de créer un tunnel socks permanent s’appuyant sur un serveur ssh.

En préalable créer une clef ssh sans passphrase et déployez la sur le serveur. Comment faire?

$ sudo aptitude install tsocks autossh

Voici mon fichier de configuration tsocks :

$ grep -E -v '^(#|$)'  /etc/tsocks.conf
local = 192.168.0.0/255.255.255.0
server = 127.0.0.1
server_type = 5
server_port = 8080

Pour tester votre tunnel :

$ autossh -f -N -D localhost:8080 utilisteurDistant@serveurDistant -p portDuServeurSSH

$ netstat -pnat | grep 8080
tcp        0      0 127.0.0.1:8080          127.0.0.1:32977         ESTABLISHED 2552/ssh
tcp6       0      0 ::1:8080                :::*                    LISTEN      2552/ssh

$ # Tuer le tunnel :

$ killall autossh 

Pour que le tunnel monte à tous les démarages. ajouter cet ligne dans le fichier /etc/rc.local (juste avant le exit)

su - utilisateurLocal -c "/usr/bin/autossh -f -N -D localhost:8080 utilisteurDistant@serveurDistant -p portDuServeurSSH"

Si tout s’est bien passé vous pouvez a présent paramétrer vos applications avec le proxy socks ou les lancers avec la commande tsocks :

$ tsocks firefox "http://monip.org" &

$ tsocks lastfm &

$ tsocks rtorrent 

ISPconfig Postfix & Dovecot : unknown user

Après une installation de ISPconfig avec Dovecot sur une Debian j’ai eu un problème de réception d’email :

May 31 21:40:05 popof postfix/local[16076]: 94C832A028C8: to=<xxxxxxxxxxxxxxx>, orig_to=<xxxxxxxxxxxxxxxxxx>, relay=local, delay=2.3, delays=0.04/0.01/0/2.2, dsn=5.1.1, status=bounced (unknown user: "david")

La solution est de modifier le fichier dovecot-sql.conf comme ceci :

125,126c125
> user_query = SELECT email as user, maildir as home, CONCAT('maildir:', maildir, '/Maildir') as mail, uid, gid, CONCAT('*:storage=', quota, 'B') AS quota_rule, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE login = '%u' AND disable%Ls = 'n'
---
< #user_query = SELECT email as user, maildir as home, CONCAT('maildir:', maildir, '/Maildir') as mail, uid, gid, CONCAT('*:storage=', quota, 'B') AS quota_rule, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE login = '%u' AND disable%Ls = 'n'
< user_query = SELECT email as user, maildir as home, CONCAT('maildir:', maildir, '/Maildir') as mail, uid, gid, CONCAT('*:storage=', quota, 'B') AS quota_rule, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE login = '%u' OR email = '%u' AND disable%Ls = 'n'

La solution a été trouvé ici : http://www.howtoforge.com/forums/showthread.php?t=56499&page=2

Serveur proxy Squid3 avec SSL (rebuild debian squeeze package)

Le paquet Debian pour squid3 n’a pas été compiler avec l’option « –enable-ssl » il va donc falloir recompiler le paquet avec cet option.

# Installation des outils de compilations
apt-get install devscripts build-essential fakeroot libssl-dev
# Déplacement dans l'environnement de travail
cd /usr/src
# Téléchargement des sources
apt-get source squid3
# Installation des dépendances pour la compilation
apt-get build-dep squid3
# Édition des règles de compilations
cd /usr/src/squid3-3.*
# Ajouter dans "--enable-ssl \" dans le fichier rules
vi debian/rules
# Compilation
./configure
debuild -us -uc -b
# Installation des paquets :
cd ..
dpkg -i  squid3_*.deb squid3-common_*.deb

Générer le certificat

Pour le SSL il nous faut un certificat

mkdir /etc/squid3/ssl
cd /etc/squid3/ssl
openssl genrsa -des3 -out privkey.pem 204
openssl req -new -x509 -nodes -key privkey.pem -out cacert.pem -days 3650
# Retirer la passphrase
openssl rsa -in privkey.pem -out privkey_noPwd.pem

Configuration de squid

Modification du fichier /etc/squid3/squid.conf

Edit : De Bourseguin : omission de libssl-dev

XtraFile – Function set_magic_quotes_runtime() is deprecated

dl.zici.fr est un service d’hébergement de fichier gratuit. J’utilise xtrafile pour le motoriser. Après avoir mis à jour PHP j’ai eu une belle surprise :

Du coup la solution :

cd /var/www/dl.zici.fr
find . -name CodeIgniter.php -exec sed -i 's/set_magic_quotes_runtime (0);/ini_set ("magic_quotes_runtime", 0);/g' {} \; -print
find . -name *.php -exec sed -i 's/=&/=/g' {} \; -print

[Debian squeeze] Serveur postfix + dovecot LDA avec OpenLdap

Un annuaire LDAP (avec le schéma misc) est déjà en place, nous souhaitons monter un serveur de mail SMTP/IMAPS en s’appuyant sur l’authentification de l’annuaire LDAP :

apt-get install postfix postfix-ldap dovecot-imapd

Postfix

Tout d’abord /etc/postfix/main.cf :

smtpd_banner = $myhostname
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
myhostname = hostname.zici.fr
myorigin = /etc/mailname
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = /usr/lib/dovecot/deliver
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
luser_relay =
alias_maps = hash:/etc/aliases
virtual_mailbox_domains = zici.fr, mercereau.info, liencontrelien.zici.fr
virtual_alias_maps = hash:/www/zici/emailPoubelle/virtual
dovecot_destination_recipient_limit = 1
virtual_transport = dovecot
mailbox_transport = dovecot
dovecot_destination_recipient_limit = 1

Dans le fichier master.cf il suffit de rajouter la ligne suivante à la fin du fichier:

# Dovecot LDA
dovecot unix - n n - - pipe flags=DRhu user=vmail:mail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${recipient} -d ${user}

Dovecot

Il n’y a que 2 fichiers de conf, d’abord, /etc/dovecot/dovecot.conf

protocols = imap imaps
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_location = maildir:/var/mail/%n
mail_uid = 500
mail_gid = 8
mail_privileged_group = mail
protocol imap {
imap_client_workarounds = outlook-idle
}

protocol pop3 {
pop3_uidl_format = %08Xu%08Xv
}
protocol managesieve {
}
protocol lda {
postmaster_address = postmaster@zici.fr
auth_socket_path = /var/run/dovecot/auth-master
}
auth default {
mechanisms = plain login
passdb pam {
}
passdb ldap {
args = /etc/dovecot/dovecot-ldap.conf
}
userdb ldap {
args = /etc/dovecot/dovecot-ldap.conf
}
user = root
socket listen {
master {
path = /var/run/dovecot/auth-master
mode = 0600
user = vmail
group = mail
}
}
}
dict {
}
plugin {
}

et enfin /etc/dovecot/dovecot-ldap.conf

hosts = 127.0.0.1
auth_bind = yes
ldap_version = 3
base = ou=Utilisateur,dc=zici,dc=fr
user_attrs = uidNumber=500,gidNumber=8
user_filter = (&(objectClass=posixAccount)(cn=%n))
pass_filter = (&(objectClass=posixAccount)(cn=%n))
default_pass_scheme = SSHA

Astuce pour tester les filtres utiliser la commande

 ldapsearch -x -h localhost -b "ou=Utilisateur,dc=zici,dc=fr" '(&(objectClass=posixAccount)(cn=Utilisateur))'

Source :

  • http://www.404blog.net/?p=36
  • http://monblog.system-linux.net/blog/2011/05/12/ajouter-des-schemas-dans-votre-annuaire-openldap-avec-debian-squeeze/
  • http://www.rjsystems.nl/en/2100-d6-openldap-provider.php

[slapd.d] bdb_equality_candidates – not indexed

Logcheck me remonte ceci :

Apr  2 16:02:04 host slapd[30343]: <= bdb_equality_candidates: (memberUid) not indexed
Apr  2 16:02:04 host slapd[30343]: <= bdb_equality_candidates: (uid) not indexed
Apr  2 16:02:04 host slapd[30343]: <= bdb_equality_candidates: (cn) not indexed
Apr  2 16:02:46 host slapd[30343]: <= bdb_equality_candidates: (uid) not indexed
Apr  2 16:02:46 host slapd[30343]: <= bdb_equality_candidates: (memberUid) not indexed
Apr  2 16:09:16 host slapd[30343]: <= bdb_equality_candidates: (uid) not indexed
Apr  2 16:09:16 host slapd[30343]: <= bdb_equality_candidates: (memberUid) not indexed
Apr  2 16:12:19 host slapd[30343]: <= bdb_equality_candidates: (uid) not indexed
Apr  2 16:20:16 host slapd[30343]: <= bdb_equality_candidates: (uid) not indexed

La démarche est donc de faire indexer à slapd les champs uid, memberUid & cn

Si vous ne l’avez pas fait éditer le fichier /etc/ldap/slapd.d/cn\=config/olcDatabase\=\{0\}config.ldif en ajoutant la ligne olcRootPW sous olcRootDN, le mot de passe est généré avec la commande slappasswd (n’oubliez pas de relancer le daemon slapd)

Pour revenir à notre problème, il faut donc éditer votre schéma via un bon éditeur (type ApacheDirectoryStudio en « cn=admin,cn=config » et le mot de passe, avec le base dn « cn=config ») Puis, dans le chemin : olcDatabase={1}hdb,cn=config ajouter la ligne :

olcDbIndex: uid,memberUid,cn eq

Des adresses emails jetables gratuites et sans limite de temps

Zici.fr vous propose des adresses emails jetables gratuites, sans aucune limite de temps.

Créer maintenant votre propre adresse email temporaire sur poubelle.zici.fr

Le script d’emali poubelle est publiée sous licence libre, vous pouvez donc le télécharger et l’utiliser sur votre plateforme. Rendez vous sur poubelle.zici.fr pour plus d’informations