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 85 (in 84 versioni)
Versione 1 del 20/03/2009 19.40.21
Dimensione: 7146
Commento:
Versione 85 del 11/04/2009 17.08.44
Dimensione: 8034
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
#format wiki
#LANGUAGE it
Linea 7: Linea 9:
HylaFAX è un sistema per l'invio e la ricezione mezzo fax di documenti digitali di classe enterprise.
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.
In questa guida sono presenti delle istruzioni utili all'installazione di '''HylaFAX''' su server '''Ubuntu''', un programma per l'invio e la ricezione mezzo fax di documenti digitali di classe enterprise.
Linea 17: Linea 13:
Per utilizzare le tecniche di '''Port knocking''' è necessario [:AmministrazioneSistema/InstallareProgrammi:installare] il pacchetto ''knockd'', reperibile dal [:Repository/Componenti:componente] '''universe''' dei [:Repository:repository ufficiali]. [:AmministrazioneSistema/InstallareProgrammi:Installare] i pacchetti ''hylafax-server'' e ''hylafax-client'', reperibili dal [:Repository/Componenti:componente] '''universe''' dei [:Repository:repository ufficiali].
Linea 19: Linea 15:
= Configurazione knockd = = Configurazione =
Linea 21: Linea 17:
 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
Prima di iniziare la configurazione di '''Hylafax''' controllare il corretto collegamento del modem/fax.
Digitare in una finestra di terminale del server il seguente comando: {{{
echo "ATDT123456789" > /dev/ttyS0
Linea 25: Linea 22:
 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"
Se il modem è collegato correttamente, le spie del modem si accendono.
 
Configurare il modem/fax, digitando nella riga di comando del server il seguente comando: {{{
faxsetup
}}}

Modificare i campi come nell'esempio: {{{
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 ricezione.
Long DistanceDialingPrefix: 0
International DialingPrefix: 00
Local Identifier: "Nome Vs. Fax Server" # Stringa identificativa alfanumerica. Comparirà nei fax trasmessi e in ricezione.
RingsBeforeAnswer: 1 # Numero di squilli prima della risposta.
Linea 29: Linea 38:
= Configurazione knockd.conf per l'apertura di una sola porta = ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/warning.png,,center)]] ||<style="padding:0.5em; border:none;">'''No dialtone.''' ||
Linea 31: Linea 40:
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
Linea 35: Linea 41:
[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.
Molto 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.
Linea 40: Linea 43:
        # 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.
Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/hylafax/config.ttyS0` e cercare la seguente riga: {{{
ModemDialCmd: ATX3DT%s
Linea 65: Linea 47:
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. Questo e molti altri parametri di configurazione si trovano nel file: `/etc/hylafax/config.ttyS0`
Linea 67: Linea 49:
= Configurazione knockd.conf per l'apertura di più porte = Nel caso si voglia riconfigurare il modem, o aggiungerne un'altro si può digitare il seguente comando:
{{{
faxaddmodem
}}}
== Permessi ==
Linea 69: Linea 55:
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%
Per permettere l'uso di '''Hylafax''' bisogna aggiungere gli utenti tramite il comando:
{{{
faxadduser -p password nome_utente
Linea 89: Linea 60:
In questo caso invece di eseguire direttamente iptables si richiamano due script passando il parametro «%IP%» alla variabile speciale «$1». Dove «nome_utente» va sostituito con il proprio nome utente e «password» con la propria password.
Linea 91: Linea 62:
== 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
== Comandi di controllo ==

Con il seguente comando è possibile il controllare lo stato del fax server: {{{
faxstat -s
}}}
Mentre per riavviare '''Hylafax''' digitare il seguente comando: {{{
/etc/init.d/hylafax restart
Linea 104: Linea 71:
== 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
== Crontab ==

Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/crontab` e inserire il seguente testo: {{{
0 * * * * /usr/sbin/faxqclean
0 0 * * * /usr/sbin/faxcron | mail -s "Report di HylaFAX" faxmaster
Linea 117: Linea 78:
= Client = = Integrazione con Postfix =
Linea 119: Linea 80:
Di seguito viene mostrato come configurare i client a dipendenza del sistema operativo utilizzato. Per l'installazione di Postfix seguire la [:Server/Mail:relativa guida].
Linea 121: Linea 82:
== Linux == Nell' esempio di configurazione seguente Postfix è stato configurato in modalità « Maildir ».
Verranno utilizzati Dovecot e Procmail.
Linea 123: Linea 85:
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
[[Anchor(alias)]]
== Alias ==

Per impostare l'utente abilitato all'invio dei fax, aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/aliases` e inserire l'utente presente in `/etc/group`.
Mettere l'utente e la mail per l'invio dei fax come idicato: {{{
faxmaster: paolo
paolo: paolo@prova.com
Linea 127: Linea 94:
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...
In questo caso è stato impostato che « faxmaster » corrisponde all'utente « paolo » con indirizzo e-mail « paolo@prova.com ».
Salvare e chiudere.
Infine digitare in una finestra di terminale il seguente comando: {{{
postalias /etc/aliases
Linea 145: Linea 100:
Nel caso una porta sia configurata tramite il protocollo UDP, usare la sintassi «port:udp» == Fax email gateway ==

Per ricevere i fax con relativa notifica direttamente al proprio indirizzo di posta elettronica aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/var/spool/hylafax/bin/faxrcvd` e modificare le seguenti righe: {{{
FILETYPE=pdf
SENDTO=FaxMaster
}}}

In questo caso i fax verranno allegati nel formato `PDF`. Si può sostituire con `TIFF` o con `PS`.

[[Anchor(Fax_to_email_gateway)]]
== 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 »

 0. Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/postfix/master.cf` e inserire il seguente testo: {{{
fax unix - n n - 1 pipe
  flags= user=fax argv=/usr/bin/faxmail -d -n ${user} # Rispettare il rientro ad inizio riga.
}}}

 0. Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/postfix/transport` e inserire il seguente testo: {{{
fax.prova.com fax:localhost
}}}

 0. Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/postfix/main.cf` e inserire il seguente testo: {{{
transport_maps = hash:/etc/postfix/transport
fax_destination_recipient_limit = 1
}}}

 0. Infine digitare in una finestra di terminale i seguenti comandi: {{{
postmap /etc/postfix/transport
/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] e impostato correttamente l' [#alias alias per faxmaster].
Nel caso si volessero ricevere le notifiche di avvenuta trasmissione dei fax anche se questi sono andati a buon fine bisogna creare con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file: `/etc/hylafax/FaxDispatch` mettendo il seguente testo:

{{{
SENDTO=FaxMaster;
FILETYPE=pdf;
}}}

= Dovecot =

Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file `/etc/dovecot/dovecot.conf` e aggiungere il seguente testo: {{{
protocols = imap imaps
disable_plaintext_auth = no
mail_location = maildir:~/Maildir
}}}

Infine riavviare l' IMAP server digitando il seguente comando: {{{
/etc/init.d/dovecot restart
}}}

= Procmail =

Nel caso si sia indicato a `Postfix`, come da default, di utilizzare `Procmail` sarà necessario creare con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file: `/etc/procmailrc` mettendo il seguente testo: {{{
DEFAULT=$HOME/Maildir/
MAILDIR=$HOME/Maildir
}}}
Linea 150: Linea 165:
 * [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]
 * [http://www.postfix.org/ Sito ufficiale Postfix]
 * [http://www.hylafax.org/content/Main_Page Sito ufficiale Hylafax]
 * [http://www.dovecot.org/ Sito ufficiale Dovecot]
 * [http://www.procmail.org/ Sito ufficiale Procmail]
 * [http://www.hylafax.org/content/Desktop_Client_Software Lista di desktop client]
 * [[http://www.hylafax.org/content/Management_Utilities Moduli di controllo]
Linea 155: Linea 175:
CategorySicurezza
CategoryHomepage

BR Indice() VersioniSupportate(hardy intrepid)

Introduzione

In questa guida sono presenti delle istruzioni utili all'installazione di HylaFAX su server Ubuntu, un programma per l'invio e la ricezione mezzo fax di documenti digitali di classe enterprise.

Installazione

[:AmministrazioneSistema/InstallareProgrammi:Installare] i pacchetti hylafax-server e hylafax-client, reperibili dal [:Repository/Componenti:componente] universe dei [:Repository:repository ufficiali].

Configurazione

Prima di iniziare la configurazione di Hylafax controllare il corretto collegamento del modem/fax. Digitare in una finestra di terminale del server il seguente comando:

echo "ATDT123456789" > /dev/ttyS0

Se il modem è collegato correttamente, le spie del modem si accendono.

Configurare il modem/fax, digitando nella riga di comando del server il seguente comando:

faxsetup

Modificare i campi come nell'esempio:

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 ricezione.
Long DistanceDialingPrefix: 0                       
International DialingPrefix: 00
Local Identifier: "Nome Vs. Fax Server"    # Stringa identificativa alfanumerica. Comparirà nei fax trasmessi e in ricezione.
RingsBeforeAnswer: 1                       # Numero di squilli prima della risposta.

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

Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/hylafax/config.ttyS0 e cercare la seguente riga:

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 può digitare il seguente comando:

faxaddmodem

Permessi

Per permettere l'uso di Hylafax bisogna aggiungere gli utenti tramite il comando:

faxadduser -p password nome_utente

Dove «nome_utente» va sostituito con il proprio nome utente e «password» con la propria password.

Comandi di controllo

Con il seguente comando è possibile il controllare lo stato del fax server:

faxstat -s 

Mentre per riavviare Hylafax digitare il seguente comando:

/etc/init.d/hylafax restart

Crontab

Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/crontab e inserire il seguente testo:

0 * * * * /usr/sbin/faxqclean
0 0 * * * /usr/sbin/faxcron | mail -s "Report di HylaFAX" faxmaster

Integrazione con Postfix

Per l'installazione di Postfix seguire la [:Server/Mail:relativa guida].

Nell' esempio di configurazione seguente Postfix è stato configurato in modalità « Maildir ». Verranno utilizzati Dovecot e Procmail.

Anchor(alias)

Alias

Per impostare l'utente abilitato all'invio dei fax, aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/aliases e inserire l'utente presente in /etc/group. Mettere l'utente e la mail per l'invio dei fax come idicato:

faxmaster: paolo
paolo:  paolo@prova.com

In questo caso è stato impostato che « faxmaster » corrisponde all'utente « paolo » con indirizzo e-mail « paolo@prova.com ». Salvare e chiudere. Infine digitare in una finestra di terminale il seguente comando:

postalias /etc/aliases 

Fax email gateway

Per ricevere i fax con relativa notifica direttamente al proprio indirizzo di posta elettronica aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /var/spool/hylafax/bin/faxrcvd e modificare le seguenti righe:

FILETYPE=pdf
SENDTO=FaxMaster

In questo caso i fax verranno allegati nel formato PDF. Si può sostituire con TIFF o con PS.

Anchor(Fax_to_email_gateway)

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 »

  1. Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/postfix/master.cf e inserire il seguente testo:

    fax      unix  -       n       n       -       1       pipe 
      flags= user=fax argv=/usr/bin/faxmail -d -n ${user}      # Rispettare il rientro ad inizio riga.
  2. Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/postfix/transport e inserire il seguente testo:

    fax.prova.com fax:localhost 
  3. Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/postfix/main.cf e inserire il seguente testo:

    transport_maps = hash:/etc/postfix/transport 
    fax_destination_recipient_limit = 1
  4. Infine digitare in una finestra di terminale i seguenti comandi:

    postmap /etc/postfix/transport
    /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] e impostato correttamente l' [#alias alias per faxmaster]. Nel caso si volessero ricevere le notifiche di avvenuta trasmissione dei fax anche se questi sono andati a buon fine bisogna creare con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file: /etc/hylafax/FaxDispatch mettendo il seguente testo:

SENDTO=FaxMaster;
FILETYPE=pdf;

Dovecot

Aprire con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file /etc/dovecot/dovecot.conf e aggiungere il seguente testo:

protocols = imap imaps
disable_plaintext_auth = no
mail_location = maildir:~/Maildir

Infine riavviare l' IMAP server digitando il seguente comando:

/etc/init.d/dovecot restart

Procmail

Nel caso si sia indicato a Postfix, come da default, di utilizzare Procmail sarà necessario creare con un [:Ufficio/EditorDiTesto:editor di testo] con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] il file: /etc/procmailrc mettendo il seguente testo:

DEFAULT=$HOME/Maildir/ 
MAILDIR=$HOME/Maildir

Ulteriori risorse


CategoryHomepage