Archivi categoria: Linux

check_apache2 per Centos

In questi giorni sto provando quello che sembra essere un ottimo plugins per Nagios e quindi anche Icinga, atto a monitorare tramite mod_status il più famoso dei web server, Apache.

Ripropongo lo script check_apache2 presente sui repository Nagios, con le modifiche apportate in modo tale da poter funzionare sotto Centos. Disponibile inoltre il template check_apache2.php che genera il grafico in PNP4Nagios.

Entrambi li trovate nel mio reposiory github.

Proftpd configurazione autenticazione MySQL e mod_ban

Esistono molte tipologie di Server FTP, che secondo il mio pensiero, si potrebbero ricondurre in quattro principali categorie:

  • per pochi utenti
  • per multi utenti
  • personalizabbili
  • orietante alla sicurezza

Io prediligo la personalizzazzione, ritengo infatti, che un servizio debba permettere massima libertà, sia per quanto rigurarda le impostazioni e che dia la possibilità di impostare livelli di sicurezza e di funzionamento desiderati. Per questo motivo, sono sempre stato orientato verso l’utilizzo di ProFTPd.

In particolare la configurazione tipo che utilizzo, è quella che si appoggia ai moduli mod_sql mod_sql_mysql, grazie ai quali è possibile implementare un sistema di autenticazione FTP con MySQL.
Si possono trovare moltissimi esempi di configurazione in rete, come questo: http://www.khoosys.net/single.htm?ipg=848, che utilizza anche il sistema di quota fornito da ProFTPd.

Nell’ultimo server installato, ho voluto inserire anche la gestione automatica del ban, basata su criteri ben precisi; mod_ban permette di bloccare l’accesso al server seguendo diverse direttive, la più veloce da configurare è sicuramente MaxLoginAttempts.

Ulteriori perfezionamenti vengono dall’estratto del file di configurazione di proftpd qui sotto.

Le prime due sono quasi ovvie, impediscono l’autenticzione dell’utente root e proteggono la shell. L’ultima riga invece impone la visualizzazzione di tutti i file, anche quelli nascosti, per un massimo di 100 ricorsivamente per 3 cartelle

RootLogin off

RequireValidShell off

ListOptions -a maxfiles 100 maxdepth 3

A completare la configurazione del server, rimane l’apertura delle porte su iptables. Aggiungendo le seguenti righe al file /etc/sysconfig/iptables

-I INPUT -p tcp –dport 21 -m state –state NEW,ESTABLISHED -j ACCEPT

-I INPUT -p tcp –sport 20 -m state –state ESTABLISHED,RELATED -j ACCEPT

Mentre nel file /etc/sysconfig/iptables-config si deve aggiungere al caricamento dei moduli

IPTABLES_MODULES=”ip_conntrak_ftp”

L’ultima cosa da fare è abilitare il demone proftpd all’avvio del server

chkconfig –level 345 protftpd on

 

 

Install Proftpd on Amazon EC2 with RDS

ok ok, all people could install easily Proftpd or alike on unix server and all people can configure MySQL to integrate the authentication (or not? Install Proftpd on debian).

But how configure proftpd with mod_sql on EC2 with RDS?

as easy as pie if you know! Set MasqueradeAddress with EC2 public DNS and SQLConnectInfo with RDS endpoint!

MasqueradeAddress ec2-xxx-xxx-xxx-xxx.eu-west-1.compute.amazonaws.com

SQLConnectInfo table_name@endpoint.eu-west-1.rds.amazonaws.com user password

List and extract single file from tar.gz

How many times do you need to download from SSH a large tar.gz file from server for extract a single file?

There’s a simple solution for avoid waiting time to download a file.

From cli:

tar -ztvf filename.tar.gz 

When you know where’s a file, extract with:

tar -xvzf filename.tar.gz path/to/file 

simple sol