Dimensione: 7146
Commento:
|
Dimensione: 7471
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 4: | Linea 4: |
= Introduzione = |
[[WikiBanner(ArticoloIncompleto)]] = Introduzione ad Hylafax = |
Linea 8: | Linea 10: |
Il sistema è basato su di una architettura client/server. Di solito il dispositivo modem/fax è collegato fisicamente ad un server permettendone la condivisione ai vari client. Hylafax è affidabile e permette carichi di lavoro molto pesanti. Supporta molti modem/fax. = Preparativi = È necessario che il firewall [:Sicurezza/Iptables: iptables] sia configurato e attivo. = Installazione = Per utilizzare le tecniche di '''Port knocking''' è necessario [:AmministrazioneSistema/InstallareProgrammi:installare] il pacchetto ''knockd'', reperibile dal [:Repository/Componenti:componente] '''universe''' dei [:Repository:repository ufficiali]. = Configurazione knockd = 0. Per fare in modo che il demone parta all'avvio del computer modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/default/knockd` in questo modo:{{{ START_KNOCKD=1 }}} 0. Sempre nel medesimo file `/etc/default/knockd` modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] indicando su quale interfaccia il demone dovrà rimanere in ascolto:{{{ KNOCKD_OPTS="-i eth0" }}} = Configurazione knockd.conf per l'apertura di una sola porta = Modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/knockd.conf` impostandolo come segue:{{{ [options] logfile = /var/log/knockd.log [openSSH] sequence = 7000,8000,9000 # Questa è la sequenza delle porte sulle quali knockd rimarrà in ascolto. Di default il protocollo è TCP. # Quali e quante porte usare è discrezionale. # sequence = 7000:udp,8000:tcp,9000:udp # Esempio con sequenza con porte miste udp/tcp seq_timeout = 30 #Tempo di attesa massimo per completare la sequenza. command = /sbin/iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT # Quando la sequenza verrà accettata verrà inserita una regola che aprirà la porta SSH standard. tcpflags = syn # Ulteriore filtro, sul tipo di flag del pacchetto iviato alla sequenza di porte. [closeSSH] sequence = 9000,8000,7000 # Questa è un'altra sequenza di porte sulle quali knockd rimarrà in ascolto. seq_timeout = 30 command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT # Quando la sequenza verrà accettata verrà inserita una regola che cancellerà quella creata in precedenza. tcpflags = syn # Ulteriore filtro, sul tipo di flag del pacchetto iviato alla sequenza di porte. }}} La variabile «%IP%» passa alla regola di iptables l'indirizzo che ha effettuato la richiesta di connessione, in questo caso verrà permessa l'apertura della porta SSH discriminando solo l'IP validato. = Configurazione knockd.conf per l'apertura di più porte = Nell'esempio sopra esposto si è visto come aprire una sola porta. Se l'esigenza fosse però quella di aprirne di più procedere creando più sessioni «[openServizio]» e «[closeServizio]». Questo sistema risulta però scomodo per ovvi motivi, per ottenere lo stesso risultato è consigliato usare degli script. Modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/knockd.conf` impostandolo come segue:{{{ [options] logfile = /var/log/knockd.log [open] sequence = 7000,8000,9000 seq_timeout = 30 tcpflags = syn command = sh /etc/open_ports %IP% [close] sequence = 9000,8000,7000 seq_timeout = 30 tcpflags = syn command = sh /etc/close_ports %IP% }}} In questo caso invece di eseguire direttamente iptables si richiamano due script passando il parametro «%IP%» alla variabile speciale «$1». == Esempio di script open_ports == Modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/open_ports` impostandolo come segue:{{{ #! /bin/sh iptables -A INPUT -s $1 -p tcp --dport 22 -j ACCEPT iptables -A INPUT -s $1 -p tcp --dport 21 -j ACCEPT iptables -A INPUT -s $1 -p tcp --dport 631 -j ACCEPT iptables -A INPUT -s $1 -p tcp --dport 5125 -j ACCEPT iptables -A INPUT -s $1 -p tcp --dport 5126 -j ACCEPT iptables -A INPUT -s $1 -p tcp --dport 8888 -j ACCEPT iptables -A INPUT -s $1 -p tcp --dport 10000 -j ACCEPT iptables -A INPUT -s $1 -p tcp --dport 81 -j ACCEPT }}} == Esempio di script close_ports == Modificare con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/close_ports` impostandolo come segue:{{{ #! /bin/sh iptables -D INPUT -s $1 -p tcp --dport 22 -j ACCEPT iptables -D INPUT -s $1 -p tcp --dport 21 -j ACCEPT iptables -D INPUT -s $1 -p tcp --dport 631 -j ACCEPT iptables -D INPUT -s $1 -p tcp --dport 5125 -j ACCEPT iptables -D INPUT -s $1 -p tcp --dport 5126 -j ACCEPT iptables -D INPUT -s $1 -p tcp --dport 8888 -j ACCEPT iptables -D INPUT -s $1 -p tcp --dport 10000 -j ACCEPT iptables -D INPUT -s $1 -p tcp --dport 81 -j ACCEPT }}} = Client = Di seguito viene mostrato come configurare i client a dipendenza del sistema operativo utilizzato. == Linux == Scaricare i sorgenti da [http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki questo indirizzo] all'interno della propria '''Home''' e [:AmministrazioneSistema/FormatiDiCompressione: scompattarli], entrare nella cartella `knock-0.x/src` e digitare all'interno di una finestra di terminale il seguente comando:{{{ gcc -o knock knock.c }}} Sempre da una finestra di terminale digitare il [#comando_client comando per la connessione]. == Windows == Scaricare da [http://www.zeroflux.org/knock/files/knock.exe questo indirizzo] e digitare all'interno di una finestra DOS il [#comando_client comando per la connessione] tralasciando la prima parte «./» == OSX == Consultare la [http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki relativa pagina]. [[Anchor(comando_client)]] = Connessione = Per effettuare la connessione digitare il seguente comando all'interno di una finestra di terminale:{{{ ./knock -v ip_host port1 port2 port3 port... }}} Nel caso una porta sia configurata tramite il protocollo UDP, usare la sintassi «port:udp» |
Il sistema è basato su architettura client/server. Il dispositivo hardware modem/fax viene collegato fisicamente ad un server permettendone la condivisione ai vari client. Hylafax è affidabile e permette carichi di lavoro molto pesanti. Supporta molti dispositivi harware. Alcune delle sue possibilità sono: * inviare fax. * inviare fax a più destinatari. * ricevere fax. * inviare l'esito di trasmissione tramite posta elettronica. * inoltrare come allegati i fax ricevuti ad un indirizzo di posta elettronica (Fax-to-Email Gateway) * stampare automaticamente i fax ricevuti * spedire fax da client di posta di elettronica (Mail-to-Fax Gateway) == Preparativi == In questa sede verrà trattata l'installazione di Hylafax su server Ubuntu. La sua integrazione con Postfix, pur essendo ampiamente esposta, è da considerarsi opzionale. L'installazione considera l'uso di un dispositivo modem/fax esterno, collegato ad una porta seriale del server. == Installazione == Per utilizzare '''Hylafax''' è necessario [:AmministrazioneSistema/InstallareProgrammi:installare] i pacchetti ''hylafax-server'' e ''hylafax-client'', reperibile dal [:Repository/Componenti:componente] '''universe''' dei [:Repository:repository ufficiali]. == Configurazione Hylafax == 0. Prima di iniziare la configurazione di Hylafax è opportuno controllare il corretto collegamento del modem/fax. Per fare ciò potrebbe essere sufficiente digitare da riga di comando del server: {{{ echo "ATDT123456789" > /dev/ttyS0 }}} Qualche attività delle spie del modem/fax confermerà che il dispositivo sia correttamente collegato alla `/dev/ttyS0 ` (equivalente alla COM1). [[BR]] 0. Come prima cosa è necessario configurare il modem/fax. Sarà sufficiente digitare da riga di comando del server: {{{ faxsetup[[Anchor(Fax_to_email_gateway)]] }}} Nelle opzioni di configurazione, molto intuitive, si può lasciare tutto come da default tranne i campi: {{{ Country Code: 39 # Prefisso della nazione di appartenenza. In questo caso Italia Area Code: 02 # Prefisso distretto telefonico. In questo caso Milano. FAX Number: +39,02,1234567890 # Numero del Vs. Fax. Comparirà nei fax trasmessi e in risposta al chiamante. Long DistanceDialingPrefix: 0 International DialingPrefix: 00 Local Identifier: "Nome Vs. Fax Server" # Stringa identificativa alfanumerica. Comparirà nei fax trasmessi e in risposta al chiamante. }}} ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/warning.png,,center)]] ||<style="padding:0.5em; border:none;">'''No dialtone.''' || Spesso i modem/fax sono configurati per il mercato americano. Questo comporta che il dispositivo, prima di effettuare la chiamata, attenda il tono di linea continuo tipico della telefonia statunitense. Non trovandolo, il modem/fax, impedirà si effettui la chiamata. Potrebbe essere utile modificare questo comportamento, aggiungendo il parametro « X3 » come nell' esempio seguente: {{{ ModemDialCmd: ATX3DT%s }}} Questo e molti altri parametri di configurazione si trovano nel file: `/etc/hylafax/config.ttyS0` Nel caso si voglia riconfigurare il modem, o aggiungerne un'altro si potrà digitare: {{{ faxaddmodem }}} == Permessi == Per permettere l'uso di Hylafax bisogna aggiungere gli utenti tramite il comando: {{{ faxadduser -p password nome_utente }}} L' utente verrà aggiunto nel file: {{{ /etc/hylafax/hosts.hfaxd }}} [[Anchor(Fax_to_email_gateway)]] == Comandi == {{{ faxstat -s }}} Permette di controllare di controllare lo stato del fax server. {{{ /etc/init.d/hylafax restart }}} Permette di riavviare Hylafax. Esistono dei moduli di controllo sviluppati per Usermin, Webmin e Nagios. Si possono trovare al seguente indirizzo: [[Anchor(Fax_to_email_gateway)]] [http://www.hylafax.org/content/Management_Utilities] == Client == Una lista esaustiva di desktop client per Hylafrax si può trovare al seguente indirizzo: [http://www.hylafax.org/content/Desktop_Client_Software] == Crontab == ---- = Integrazione con Postfix = Per l'installazione di Postfix seguire la seguente guida: [http://wiki.ubuntu-it.org/Server/Mail Mail Server] Nell' esempio di configurazione seguente si assume che Postfix sia stato configurato in modalità « Maildir ». Verranno pure utilizzati Dovecot e Procmail. == Alias == L'installazione di Hylafax dovrebbe aver creato un utente « faxmaster ». Per controllare verificare il file `/etc/group` Se si è seguita la guida di Postfix si avrà capito l'importanza e la funzione degli alias, in questo caso verrà aggiunto un valore nel file `/etc/aliases` per stabilire a quale utente inviare i fax ricevuti, le notifiche, ecc. {{{ faxmaster: paolo paolo: paolo@prova.com }}} In questo caso è stato impostato che « faxmaster » corrisponde all'utente « paolo » con indirizzo e-mail « paolo@prova.com ». Una volta che si è modificato il file `/etc/aliases` bisognerà comunicarlo a Postfix digitando il comando: {{{ postalias /etc/aliases }}} == Fax to email gateway [[Anchor(Fax_to_email_gateway)]] == Questo permette di ricevere i fax, allegati alla notifica, direttamente al proprio indirizzo di posta elettronica. Modificare il file `/var/spool/hylafax/bin/faxrcvd` {{{ FILETYPE=pdf SENDTO=FaxMaster }}} In questo caso i fax verranno allegati nel formato `PDF`. Si può sostituire con `TIFF` o con `PS`. == Mail to fax gateway == Questo permette di inviare dei fax usando il proprio client di posta elettronica. La sintassi del destinatario sarà: « numero_fax_del_destinatario@fax.prova.com » Per ottenere questo risultato bisognerà modificare i seguenti file: 0. `/etc/postfix/master.cf` {{{ fax unix - n n - 1 pipe flags= user=fax argv=/usr/bin/faxmail -d -n ${user} }}} Rispettare il rientro alla riga `flags= ... ` 0. `/etc/postfix/transport` Questo file probabilmente non esisterà. Bisogna crearlo. {{{ fax.prova.com fax:localhost }}} 0. `/etc/postfix/main.cf` {{{ transport_maps = hash:/etc/postfix/transport fax_destination_recipient_limit = 1 }}} Digitare il comando: {{{ postmap /etc/postfix/transport }}} Riavviare Postfix: {{{ /etc/init.d/postfix restart }}} == Notifiche di trasmissione == Per default Hylafax non invia notifiche di avvenuta trasmissione dei fax inviati a buon fine. Le invia solo nel caso di errore e che sia stata configurata la sezione [#Fax_to_email_gateway Fax to email gateway] Dovecot /etc/dovecot/dovecot.conf protocols = imap imaps disable_plaintext_auth = no mail_location = maildir:~/Maildir /etc/init.d/dovecot restart Procmailrc /etc/procmailrc DEFAULT=$HOME/Maildir/ MAILDIR=$HOME/Maildir |
Linea 150: | Linea 204: |
* [http://www.zeroflux.org/cgi-bin/cvstrac.cgi/knock/wiki Sito ufficiale del progetto] * [http://www.portknocking.org/ Port knocking in perl] * [http://portknocko.berlios.de/ Sito ufficiale del progetto PortKnockO] * [http://www.openskill.info/infobox.php?ID=694 Documentazione sui TCP Flag ] |
* [http://www.pluto.it/files/ildp/HOWTO/Modem-HOWTO/Modem-HOWTO.html Modem How to] * [http://en.wikipedia.org/wiki/Hayes_command_set Elenco comandi Hayes] |
Linea 155: | Linea 208: |
CategorySicurezza | CategoryHomepage |
BR Indice() VersioniSupportate(hardy intrepid) WikiBanner(ArticoloIncompleto)
Introduzione ad Hylafax
HylaFAX è un sistema per l'invio e la ricezione mezzo fax di documenti digitali di classe enterprise. Il sistema è basato su architettura client/server. Il dispositivo hardware modem/fax viene collegato fisicamente ad un server permettendone la condivisione ai vari client. Hylafax è affidabile e permette carichi di lavoro molto pesanti. Supporta molti dispositivi harware. Alcune delle sue possibilità sono:
- inviare fax.
- inviare fax a più destinatari.
- ricevere fax.
- inviare l'esito di trasmissione tramite posta elettronica.
- inoltrare come allegati i fax ricevuti ad un indirizzo di posta elettronica (Fax-to-Email Gateway)
- stampare automaticamente i fax ricevuti
- spedire fax da client di posta di elettronica (Mail-to-Fax Gateway)
Preparativi
In questa sede verrà trattata l'installazione di Hylafax su server Ubuntu. La sua integrazione con Postfix, pur essendo ampiamente esposta, è da considerarsi opzionale. L'installazione considera l'uso di un dispositivo modem/fax esterno, collegato ad una porta seriale del server.
Installazione
Per utilizzare Hylafax è necessario [:AmministrazioneSistema/InstallareProgrammi:installare] i pacchetti hylafax-server e hylafax-client, reperibile dal [:Repository/Componenti:componente] universe dei [:Repository:repository ufficiali].
Configurazione Hylafax
Prima di iniziare la configurazione di Hylafax è opportuno controllare il corretto collegamento del modem/fax. Per fare ciò potrebbe essere sufficiente digitare da riga di comando del server:
echo "ATDT123456789" > /dev/ttyS0
Qualche attività delle spie del modem/fax confermerà che il dispositivo sia correttamente collegato alla /dev/ttyS0 (equivalente alla COM1).
Come prima cosa è necessario configurare il modem/fax. Sarà sufficiente digitare da riga di comando del server:
faxsetup[[Anchor(Fax_to_email_gateway)]]
Nelle opzioni di configurazione, molto intuitive, si può lasciare tutto come da default tranne i campi:
Country Code: 39 # Prefisso della nazione di appartenenza. In questo caso Italia Area Code: 02 # Prefisso distretto telefonico. In questo caso Milano. FAX Number: +39,02,1234567890 # Numero del Vs. Fax. Comparirà nei fax trasmessi e in risposta al chiamante. Long DistanceDialingPrefix: 0 International DialingPrefix: 00 Local Identifier: "Nome Vs. Fax Server" # Stringa identificativa alfanumerica. Comparirà nei fax trasmessi e in risposta al chiamante.
No dialtone. |
Spesso i modem/fax sono configurati per il mercato americano. Questo comporta che il dispositivo, prima di effettuare la chiamata, attenda il tono di linea continuo tipico della telefonia statunitense. Non trovandolo, il modem/fax, impedirà si effettui la chiamata.
Potrebbe essere utile modificare questo comportamento, aggiungendo il parametro « X3 » come nell' esempio seguente:
ModemDialCmd: ATX3DT%s
Questo e molti altri parametri di configurazione si trovano nel file: /etc/hylafax/config.ttyS0
Nel caso si voglia riconfigurare il modem, o aggiungerne un'altro si potrà digitare:
faxaddmodem
Permessi
Per permettere l'uso di Hylafax bisogna aggiungere gli utenti tramite il comando:
faxadduser -p password nome_utente
L' utente verrà aggiunto nel file:
/etc/hylafax/hosts.hfaxd
Comandi
faxstat -s
Permette di controllare di controllare lo stato del fax server.
/etc/init.d/hylafax restart
Permette di riavviare Hylafax.
Esistono dei moduli di controllo sviluppati per Usermin, Webmin e Nagios. Si possono trovare al seguente indirizzo: Anchor(Fax_to_email_gateway) [http://www.hylafax.org/content/Management_Utilities]
Client
Una lista esaustiva di desktop client per Hylafrax si può trovare al seguente indirizzo:
[http://www.hylafax.org/content/Desktop_Client_Software]
Crontab
Integrazione con Postfix
Per l'installazione di Postfix seguire la seguente guida: [http://wiki.ubuntu-it.org/Server/Mail Mail Server]
Nell' esempio di configurazione seguente si assume che Postfix sia stato configurato in modalità « Maildir ». Verranno pure utilizzati Dovecot e Procmail.
Alias
L'installazione di Hylafax dovrebbe aver creato un utente « faxmaster ». Per controllare verificare il file /etc/group Se si è seguita la guida di Postfix si avrà capito l'importanza e la funzione degli alias, in questo caso verrà aggiunto un valore nel file /etc/aliases per stabilire a quale utente inviare i fax ricevuti, le notifiche, ecc.
faxmaster: paolo paolo: paolo@prova.com
In questo caso è stato impostato che « faxmaster » corrisponde all'utente « paolo » con indirizzo e-mail « paolo@prova.com ».
Una volta che si è modificato il file /etc/aliases bisognerà comunicarlo a Postfix digitando il comando:
postalias /etc/aliases
Fax to email gateway [[Anchor(Fax_to_email_gateway)]]
Questo permette di ricevere i fax, allegati alla notifica, direttamente al proprio indirizzo di posta elettronica. Modificare il file /var/spool/hylafax/bin/faxrcvd
FILETYPE=pdf SENDTO=FaxMaster
In questo caso i fax verranno allegati nel formato PDF. Si può sostituire con TIFF o con PS.
Mail to fax gateway
Questo permette di inviare dei fax usando il proprio client di posta elettronica. La sintassi del destinatario sarà: « numero_fax_del_destinatario@fax.prova.com » Per ottenere questo risultato bisognerà modificare i seguenti file:
/etc/postfix/master.cf
fax unix - n n - 1 pipe flags= user=fax argv=/usr/bin/faxmail -d -n ${user}
Rispettare il rientro alla riga flags= ...
/etc/postfix/transport
Questo file probabilmente non esisterà. Bisogna crearlo.
fax.prova.com fax:localhost
/etc/postfix/main.cf
transport_maps = hash:/etc/postfix/transport fax_destination_recipient_limit = 1
Digitare il comando:
postmap /etc/postfix/transport
Riavviare Postfix:
/etc/init.d/postfix restart
Notifiche di trasmissione
Per default Hylafax non invia notifiche di avvenuta trasmissione dei fax inviati a buon fine. Le invia solo nel caso di errore e che sia stata configurata la sezione [#Fax_to_email_gateway Fax to email gateway]
Dovecot
/etc/dovecot/dovecot.conf
protocols = imap imaps disable_plaintext_auth = no mail_location = maildir:~/Maildir
/etc/init.d/dovecot restart
Procmailrc
/etc/procmailrc DEFAULT=$HOME/Maildir/ MAILDIR=$HOME/Maildir
Ulteriori risorse
[http://www.pluto.it/files/ildp/HOWTO/Modem-HOWTO/Modem-HOWTO.html Modem How to]
[http://en.wikipedia.org/wiki/Hayes_command_set Elenco comandi Hayes]