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

[...]
https_port 3130 [...] cert=/etc/squid3/ssl/cacert.pem key=/etc/squid3/ssl/privkey_noPwd.pem
[...]

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

[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

Ménage dans Debian

Après installation d’une debian sur un linutop2 il s’avère que la carte flash de 1Go est un peu petite.. Un peut de ménage s’impose donc parmi les docs, man, langue et autres choses non vitale du système

    aptitude purge man man-db doc-debian doc-debian-fr doc-linux-fr-text doc-linux-text xorg-docs debian-faq info manpages manpages-fr manpages-fr-extra

rm -r /usr/share/man/*
rm -r /usr/share/doc/*
rm -rf /var/lib/apt/lists/security*
rm -rf /var/lib/apt/lists/debian*
rm -f /var/cache/apt/pkgcache.bin /var/cache/apt/srcpkgcache.bin
rm -f /var/lib/dpkg/available-old /var/lib/dpkg/status-old
rm -f /var/cache/debconf/config.dat-old /var/cache/debconf/templates.dat-old
apt-get clean > /dev/null
find /var/lib/apt/lists -type f \( -name "*Packages*" -o -name "*Sources*" -o -name "*Release*" \) -exec rm -f '{}' ';' 2>/dev/null
dpkg --clear-avail > /dev/null
rm -f /var/cache/apt/*.bin > /dev/null
apt-cache gencaches > /dev/null

find /usr/share/locale -name "*.mo" -exec rm '{}' ';' 2>/dev/null
find /usr/share/ -name "*.info.gz" -exec rm '{}' ';' 2>/dev/null
# find /usr/share/locale -path '*/en' -mindepth 1 -maxdepth 2 -prune -o -print -exec rm -rf '{}' ';' 2>/dev/null >/dev/null

aptitude install localpurge

localpurge

rm -f /var/lib/dpkg/info/*.md5sums

mkdir /usr/share/man/man5
mkdir /usr/share/man/man8
mkdir /usr/share/man/man1

Connexion SSH avec clé RSA + passphrase

Pour ce connecter de façon vraiment sécurisé à vos serveur, la clé RSA et la passphrase sont un très bon début…

D’abord générer des clés

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/thouveni/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): ***********************************************
Enter same passphrase again: ***********************************************
Your identification has been saved in /home/thouveni/.ssh/id_rsa.
Your public key has been saved in /home/thouveni/.ssh/id_rsa.pub.
The key fingerprint is:
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Ensuite diffuser sa clé publique

$ scp ~/.ssh/id_rsa.pub [user@]host:~/.ssh/authorized_keys2
id_rsa.pub 100% 401 0.4KB/s 00:00

OU

cat $HOME/.ssh/id_rsa.pub | ssh [user@]host "mkdir -p .ssh; chmod 700 .ssh; cat >> .ssh/authorized_keys"

OU

ssh-copy-id [user@]host

Enfin tester la connexion :

$ ssh [user@]host
Enter passphrase for key '/home/user/.ssh/identity':

Valider temporairement sa passphrase :

eval 'ssh-agent'
ssh-add ~/.ssh/id_rsa

Modification de votre passphrase :

ssh-keygen -p

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
5c:9b:16:56:a6:cd:11:10:3a:cd:1b:a2:91:cd:e5:1c.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending key in /home/user/.ssh/known_hosts:1
RSA host key for ras.mydomain.com has changed and you have requested strict checking.
Host key verification failed.

Solution :

ssh-keygen -R IP

En continuant à utiliser le site, vous acceptez l’utilisation des cookies (au chocolat) Plus d’informations

Les cookies sont utilisés à des fin de statistique de visite du blog sur une plateforme indépendante que j'héberge moi même. Les statistiques sot faites avec un logiciel libre. Aucune information n'est redistribué à google ou autre. Je suis seul autorisé à lire ces informations

Fermer