Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Server/HylaFax"
Differenze tra le versioni 1 e 56 (in 55 versioni)
Versione 1 del 20/03/2009 19.40.21
Dimensione: 7146
Commento:
Versione 56 del 04/04/2009 14.47.36
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

  1. 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

  1. 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.

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:

  1. /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= ... 

  1. /etc/postfix/transport

Questo file probabilmente non esisterà. Bisogna crearlo.

fax.prova.com fax:localhost 
  1. /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


CategoryHomepage