CyberTek - the future at the present!

Archive for the ‘redhat’ Category

Autenticazione saslauthd Sendmail

Posted by: (Set 24)

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-cfcyrus-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
TRUST_AUTH_MECH(`LOGIN PLAIN’)dnl
define(`confAUTH_MECHANISMS’, `LOGIN PLAIN’)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…
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

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
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-AUTH LOGIN PLAIN
250-DELIVERBY
250 HELP

 

Published in: linux, redhat, tips

Usare il comando rpm

Posted by: (Set 12)

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. Per importare la public-key si usa il seguente comando:

# rpm –import /media/cdrom/RPM-GPG-KEY

 

Per verificare l'integrità di un pacchetto, prima di procedere con l'installazione, specie se questo è stato scaricato da internet, eseguire il prossimo comando:

# 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

Se il file .spec non esiste può essere creato. Infine prepariamo la compilazione per la creazione del nuovo rpm:

# cd /usr/src/redhat

# rpmbuild -bb SPECS/snort.spec

 

 

Published in: linux, redhat, shell, tips
Powered by pmar s.r.o.