User Tools

Site Tools


coursieps:20060127

ftps

Générer une clef, une demande de certificat et la faire signer par l'autorité de certification. Générer la clef:

 mkdir -p /etc/proftpd/ssl/
cd /etc/proftpd/ssl/
openssl genrsa -out deblab-secure.key

Générer la demande de certificat:

 openssl req -new -key deblab-secure.key -out deblab-secure.csr

Signer la demande:

cd /etc/apache2/sites-enabled/
openssl ca -policy policy_anything -out /etc/proftpd/ssl/deblab-sercure.crt -infiles /etc/proftpd/ssl/deblab-sercure.csr

ln -s /etc/apache2/sites-enabled/demoCA/cacert.pem /etc/proftpd/ssl/cacert.pem

Remarque: proftpd ne fonctionne pas si on utilise un certificat auto-signé.

Ajouter à /etc/proftpd.conf sous

# Uncomment this if you would use TLS module:
#TLSEngine                      on

ceci:

<IfModule mod_tls.co>
        TLSEngine               on
        TLSLog                  /var/ftpd/tls.log
        TLSProtocol             TLSv1

        TLSRequired             off

        TLSRSACertificateFile   /etc/proftpd/ssl/deblab-secure.crt
        TLSRSACertificateKeyFile        /etc/proftpd/ssl/deblab-secure.key

        TLSCACertificateFile    /etc/proftpd/ssl/cacert.pem

        TLSVerifyClient         off

        </IfModule>

TSLRequired:

  • off: accepte les connections ftp et ftps
  • on: que ftps comme connection (pas ftp)

TLSVerifiyClient: si on, demande un certificat du client pour pouvoir établir la connexion

Finalement, créer le répertoire de logs et redémarrer le serveur:

mkdir /var/ftpd/
/etc/init.d/proftpd restart

Pour tester, installer un client:

aptitude install ftp-ssl

Et ensuite se connecter:

ftp-ssl localhost
Connected to 403-15.deb.lab.
220 ProFTPD 1.2.10 Server (Debian) [127.0.0.1]
Name (localhost:linux): linux
234 AUTH SSL successful
[SSL Cipher DHE-RSA-AES256-SHA]
331 Password required for linux.
Password:
230 User linux logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> 

Si ça ne marche pas, on a:

ftp-ssl localhost
Connected to 403-15.deb.lab.
220 ProFTPD 1.2.10 Server (Debian) [127.0.0.1]
Name (localhost:linux): linux
500 AUTH not understood
SSL not available
331 Password required for linux.
Password:
230 User linux logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> 

smtps

Il faut d'abord avoir un serveur mail qui tourne :) (cf. module 2: administration). Nous travaillerons avec Postfix. Il faut donc que bind tourne.

Postfix ne gère pas TLS par défaut, il faut installer un package:

aptitude install postfix-tls

Dans /etc/postfix/master.cf: changer les lignes en bas de fichier:

#tlsmgr    fifo  -       -       n       300     1       tlsmgr
#smtps     inet  n       -       n       -       -       smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#587       inet  n       -       n       -       -       smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes

en (décommenter et changer smtpd_sasl_auth_enable=no):

tlsmgr    fifo  -       -       n       300     1       tlsmgr
smtps     inet  n       -       n       -       -       smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=no
587       inet  n       -       n       -       -       smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes

Ensuite, ajouter au fichier /etc/postfix/main.cf les lignes suivantes à la fin:

smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_tls_cert_file = /etc/postfix/postfix.pem
smtp_tls_key_file = /etc/postfix/postfix.pem
smtp_tls_session_cache_database = btree:/var/run/smtp_tls_session_cache
smtp_use_tls = yes
smtpd_tls_CAfile = /etc/postfix/cacert.pem
smtpd_tls_cert_file = /etc/postfix/postfix.pem
smtpd_tls_key_file = /etc/postfix/postfix.pem
smtpd_tls_received_header = yes
smtpd_tls_session_cache_database = btree:/var/run/smtpd_tls_session_cache
smtpd_use_tls = yes
tls_random_source = dev:/dev/urandom
smtpd_sasl_auth_enable = no
smtpd_tls_auth_only = no

Générer le certificat et la clef:

openssl req -new -x509 -nodes -out /etc/postifx/postfix.pem -keyout /etc/postfix/postfix.pem

Redémarrer postfix:

/etc/init.d/postfix restart

Pour tester, dans évolution, menu: Edit → Preferences → edit user toto → onglet Sending Email → Security → Use secure connexion: Always

Puis envoyer un email avec le profil toto.

pop3s - imaps

Installer les packages suivants, respectivement:

aptitude install dovecot-pop3d
aptitude install dovecot-imapd

Configurer /etc/dovecot/dovecot.conf Changer la ligne:

protocols=

en

protocols=imap imaps pop3 pop3s

En fonction des protocoles qu'on accepte, retirer ceux qu'on laisse tomber.

et décommenter (=enlever les #) les 2 lignes suivantes:

#imap_listen = *
#pop3_listen = *

et ajouter un path pour les logs:

log_path = /var/log/dovecot

Créer le répertoire pour les logs:

mkdir /var/log/dovecot/

Démarrer dovecot:

/etc/init.d/dovecot start

Tester en configurant le client mail Evolution: menu Edit → Preferences → edit user toto → onglet Receving Email.

coursieps/20060127.txt · Last modified: 2013/01/30 17:50 (external edit)