Per tutti coloro che possiedono un server Linux dotato del servizio Sendmail è oramai necessario dotarlo della possibilità d'invio tramite autenticazione. Invero è piuttosto semplice attivare l'opzione, anche se si deve tenere conto che alcune distribuzioni come CentOS non lo rendono disponibile di default, ecco come rimediare: Installate i pacchetti sendmail-cf e cyrus-sasl se non presenti nel sistema, per redhat/centos: [] yum install sendmail-cf cyrus-sasl Quindi editate il sedmail.mc (/etc/mail/sendmail.mc) e decommentare queste righe: define(`confAUTH_OPTIONS’, `A’)dnl Per sicurezza controllare anchequesta impostazione: DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA’)dnl A questo punto è necessario ricompilare il file sendmail.cf con il programma m4: [] m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf Controllate e all'occorrenza editate il file /usr/lib/sasl2/Sendmail.conf come segue: pwcheck_method:saslauthd Ora fate ripartire sendmail e saslauthd [] /etc/init.d/saslauthd start [] /etc/init.d/sendmail restart Infine possiamo controllare che il nostro lavoro sia stato corretto: [] telnet localhost 25 Trying 127.0.0.1… Visto che sendmail risponde ci presentiamo digitando: ehlo localhost a cui verrà risposto se tutto va bene(in rosso la riga che ci dice che sendmail accetta le autenticazioni, oltre a login plain potrebbero essere presenti altri metodi, la cosa è corretta): 250-xxxxx.xxxxx.xx Hello xxxxx.xxxxx.xx [127.0.0.1], pleased to meet you
TRUST_AUTH_MECH(`LOGIN PLAIN’)dnl
define(`confAUTH_MECHANISMS’, `LOGIN PLAIN’)dnl
Connected to localhost.
Escape character is ‘^]’.
220 xxxxx.xxxxx.xx ESMTP Sendmail 8.12.11/8.12.11; Mon, 23 Aug 2004 12:36:30 +0200
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-AUTH LOGIN PLAIN
250-DELIVERBY
250 HELP
Archive for the ‘redhat’ Category
Autenticazione saslauthd Sendmail
Usare il comando rpm
Visualizzare tutti i pacchetti rpm installati:
# rpm -qa
Eseguire una query al db rpm filtrando tutti pacchetti contenenti la stringa 'httpd':
# rpm -qa | grep httpd
Ottenere informazioni su un determinato pacchetto installato, esempio:
# rpm -qi httpd
Visualizzare la lista dei file forniti da un pacchetto installato, esempio:
# rpm -ql httpd
Visualizzare solo la lista dei file di configurazione forniti da un pacchetto installato:
# rpm -qc httpd
Ottenere informazioni sulla documentazione fornita da un pacchetto:
# rpm -qc httpd
Visualizzare la lista delle dipendenze richieste da un pacchetto:
# rpm -q httpd –whatrequires
Visualizzare le capability fornite da un pacchetto:
# rpm -q httpd –whatprovides
Visualizzare gli script avviati in fase di installazione/rimozione:
# rpm -q httpd –scripts
Visualizzare lo storico delle revisioni di pacchetto:
# rpm -q httpd –changelog
Verificare a quale pacchetto appartiene un dato file:
# rpm -qf /etc/httpd/conf/httpd.conf
Visualizzare la lista dei file forniti da un pacchetto non ancora installato:
# rpm -qp httpd-2.0.52-3.i386.rpm -l
Fedora/RedHat, firmano tutti i pacchetti con una chiave digitale privata GPG.
# rpm –import /media/cdrom/RPM-GPG-KEY
# rpm –checksig nome_pacchetto.rpm
Per verificare tutti i pacchetti installati sul sistema:
# rpm -qa gpg-pubkey
Installare un pacchetto binario:
# rpm -ivh nome_pacchetto.rpm
Installare un pacchetto binario ignorando le dipendenze richieste:
# rpm -ivh –nodeeps nome_pacchetto.rpm
Installare un pacchetto binario utlizzando la risoluzione automatica delle dipendenze:
# rpm -ivh –aid nome_pacchetto.rpm
Aggiornare un pacchetto senza modificarne i file di configurazione:
# rpm -U nome_pacchetto.rpm
Aggiornare un pacchetto solo se è già installato:
# rpm -F nome_pacchetto.rpm
Rimuore un pacchetto rpm:
# rpm -e nome_pacchetto
Verificare file size, permessi, tipo, owner, group, MD5 checksum e ultima modifica sul database RPM:
# rpm -V httpd
Verificare tutti i pacchetti installati sul sistema – usare con cautela, impegna il sistema in maniera estrema:
# rpm -Va
Verificare un pacchetto non installato:
# rpm -Vp httpd-2.0.52-3.i386.rpm
Questo comando permette di estrarre i files dal pacchetto per essere convertiti in un flusso cpio e quindi di estrarre gli eseguibili dal pacchetto:
# rpm2cpio httpd-2.0.52-3.i386.rpm | cpio –extract –make-directories *bin*
Installazione di un pacchetto sorgente i386.
Step 1:
# rpmbuild –rebuild nome_pacchetto.src.rpm
Step 2:
# rpm -ivh /usr/src/redhat/RPMS/i386/nome_pacchetto.rpm
Installazione di un pacchetto sorgente i386 (procedura alternativa).
Step 1:
# rpmbuild –recompile nome_pacchetto.src.rpm
Step 2:
# rpmbuild –bb /usr/src/redhat/SPECS/nome_pacchetto.spec
Step 3:
# rpm -ivh /usr/src/redhat/RPMS/i386/nome_pacchetto.rpm
Creazione di un pacchetto rpm a partire dal sorgente.
Vogliamo creare un pacchetto a partire dai sorgenti dell'applicazione example. Scarichiamo il sorgente da internet con wget:
# wget http://www.example.org/dl/example-2.0.0.tar.gz
# cp example-2.0.0.tar.gz /usr/src/redhat/SOURCE
# cd /usr/src/redhat/SOURCE
# tar xzf example-2.0.0.tar.gz
Controllare se esiste all'interno della directory scompattata il file '.spec', il quale contiene le specifiche per la creazione del binario, e copiarlo in /usr/src/redhat/SPEC:
# cp example.spec /usr/src/redhat/SPEC/example.spec
Infine prepariamo la compilazione per la creazione del nuovo rpm:
# cd /usr/src/redhat
# rpmbuild -bb SPECS/snort.spec


































