1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

How-To [PAPPA PRONTA] Server Ubuntu con CCcam 2.2.1

Dieses Thema im Forum "Linux-Server How-To´s (Italiana)" wurde erstellt von alberto7, 10. Januar 2011.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. alberto7
    Online

    alberto7 VIP

    Registriert:
    26. Oktober 2008
    Beiträge:
    793
    Zustimmungen:
    582
    Punkte für Erfolge:
    93
    Ort:
    Weil am Rhein
    Una guida da seguire passo passo per usufruire di un funzionale sistema Ubuntu come Server CCcam con configurazione basilare su lettore Smartmouse seriale.
    Il sistema potra essere integrato e/o ampliato in seguito mediante poche modifiche.


    Requisiti necessari:
    - Personal Computer AbandonWare (rottame) oppure thin client (IGEL 5128 è quello che consiglio)
    - Lettore smartcard seriale (di default) o USB (tipo smargo)
    - Sistema operativo UBUNTU 10.04 Server Edition che potete scaricare

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?

    .
    - Conoscenza BASE del sistema Linux e di alcuni programmini essenziali tra cui l'editor di testi nano.
    - Un po di pazienza e buona volonta (veramente poca)

    FASE 1 - Installazione del Sistema Operativo sul PC/THIN CLIENT

    Su questa fase non mi dilungo volutamente in quanto, se non siete in grado di installarvi Ubuntu su un PC è meglio che lasciate stare.
    Comunque pochi semplici consigli. Masterizzate l'immagine ISO su un CD con il vostro programma preferito e procedete ad un'installazione pulita sulla macchina.
    Configurate parametri di rete e partizionate il disco in modo da assegnare anche una partizione di swap pari almeno alla stessa quantità di RAM installata.
    Visto che la versione utilizzata è la Server Edition, NON ESISTE INTERFACCIA GRAFICA...quindi tutto a manina [​IMG] da terminale.
    Per comodità di spiegazione, al momento di inserire il nome utente e la password per lo user di sistema, utilizzerete il nome "cccamserver" (password a vostra discrezione)
    Unico pacchetto opzionale che vivamente consiglio è il server SSH che vi verrà proposto verso la fine della procedura di installazione.

    Oppure potete installarlo semplicemente con il comando:
    Quote:

    sudo apt-get install openssh-server

    FASE 2 - Installazione dell'eseguibile e del file di configurazione.

    In questa fase copieremo il file CCcam.x86 e il file CCcam.cfg nelle corrette posizioni.
    Scomprimete l'archivio sul vostro PC di tutti i giorni e controllate che ci siano all'interno i 2 files che ci servono (CCcam.x86 e CCcam.cfg)
    Per trasferire i files potete utilizzare WinSCP (da Windows) oppure, se utilizzate un sistema Linux, potete accedere al sistema direttamente tramite SSH e trasferire i files tramite il comando SCP.
    Nel 90 % dei casi, conoscendovi, userete Windows [​IMG]...quindi tramite WinSCP (tramite il protocollo SSH), trasferite i files CCcam.x86 e CCcam.cfg nella home del vostro serverino (/home/cccamserver)

    Una volta che i files sono nella home/cccamserver provvederemo a copiare l'eseguibile in /usr/bin con il comando:

    Quote:
    sudo cp /home/cccamserver/CCcam.x86 /usr/bin

    e poi date permessi di esecuzione al file col comando:
    Quote:

    sudo chmod 755 /usr/bin/CCcam.x86

    Bene...ora il file di configurazione (usate per ora quello di esempio nel file compresso della CCcam).

    Copiatele in /var/etc con il comando:
    Quote:

    sudo cp /home/cccamserver/CCcam.cfg /var/etc

    Se in questa fase il sistema vi risponde che la cartella /var/etc non esiste, allora dovrete crearla con il comando:
    Quote:

    sudo mkdir /var/etc

    e a seguito riprovate con la copia.

    Per scrupolo date i permessi di lettura al file di configurazione con il comando:
    Quote:

    sudo chmod 644 /var/etc/CCcam.cfg

    Bene, ora il sistema è quasi pronto per funzionare...ancora qualche passaggio.

    FASE 3 - Configurazione del file CCcam.cfg

    In questa fase vedremo una semplice configurazione del file CCcam.cfg per poter leggere una qualsiasi card dal lettore smartmouse seriale.
    Quindi eseguite:

    Quote:

    sudo nano /var/etc/CCcam.cfg

    e configurate il file nel seguente modo:

    Quote:

    #F:....................... # qui le vostre Fline

    #C:....................... #qui le Vostre Cline
    SERVER LISTEN PORT : 12000
    ALLOW WEBINFO: yes
    WEBINFO USERNAME : cccamserver
    WEBINFO PASSWORD : cccampassword
    WEBINFO LISTEN PORT : 8080
    SERIAL READER : /dev/ttyS0
    EXTRA EMM LEVEL : yes
    EMM THREADS : 1
    Questa è una configurazione di base in cui il server è in ascolto sulla porta 12000, configurato con un lettore seriale su /dev/ttyS0 (COM1) con la WebIf abilitata sulla porta 8080.
    Ovviamente questo file può essere personalizzato a piacere con altre opzioni (tipo /dev/ttyUSB0 anzichè /dev/ttyS0 se usate un lettore esterno USB)

    FASE 4 - Automatismi e scripts di avvio

    Il sistema è pronto all'uso. Infatti se impartite al sistema il comando:
    sudo CCcam.x86 -dv
    tutto partirà senza grossi problemi.
    Considerato però che questo server deve avviarsi in automatico e che in caso di crash dell'emu è buona cosa che questo venga riavviato, vi illustrerò alcuni script basilari da integrare.
    Script di avvio/arresto/riavvio dell'emulatore:

    da terminale create il file cardserver.sh in /etc/init.d con il comando:
    Quote:

    sudo nano /etc/init.d/cardserver.sh

    e copiateci dentro queste righe:

    Quote:
    ###################################
    #!/bin/sh -e
    #
    #

    case "$1" in
    start)
    echo "Avvio CCcam Server"
    /usr/bin/CCcam.x86 -v &
    ;;
    stop)
    echo "Arresto CCcam Server"
    killall -w CCcam.x86 >&2
    ;;
    restart)
    echo "Riavvio CCcam Server"
    killall -w CCcam.x86 >&2
    sleep 30
    /usr/bin/CCcam.x86 -v &
    ;;
    *)
    echo "Usage: $0 {start|stop|restart}" >&2
    exit 1
    ;;
    esac

    #######################################
    Salvate il file e dategli adeguati permessi con il comando:
    Quote:

    sudo chmod 755 /etc/init.d/cardserver.sh

    L'uso è semplice:

    sudo cardserver.sh start per avviare l'emu
    sudo cardserver.sh stop per arrestare l'emu
    sudo cardserver.sh restart per riavviare l'emu

    Interveniamo ora per rendere eseguibile questo script ad ogni boot del sistema con un semplice comando:
    Quote:
    sudo update-rc.d cardserver.sh defaults
    Ora, ad ogni riavvio di sistema l'emulatore CCcam partirà in automatico.
    Utilissima, a mio giudizio il controllo eseguito ogni 5 minuti dell'emulatore, ovvero...se CCcam inspiegabilmente crasha...chi lo riavvia?
    Risposta...nessuno, si riavvia in automatico

    Quindi...altro scriptino che chiameremo checkcccam:
    Quote:

    sudo nano /usr/bin/checkcccam.sh

    e ci copiate dentro queste poche righe:

    Quote:
    #####################################
    #!/bin/bash
    CCCAM_CONFIG_FILE_PATH="/var/etc"
    CCCAM_EXECUTABLE_PATH="/usr/bin"
    NAME_OFF_CCCAM_EXECUTABLE="CCcam.x86"
    #
    function Check_CCcam {
    ps -eo comm,pid,etime > tmpcat
    PID=$(grep -i $NAME_OFF_CCCAM_EXECUTABLE tmpcat | awk -F" " '{ print $2}')
    TIME=$(grep -i $NAME_OFF_CCCAM_EXECUTABLE tmpcat | awk -F" " '{ print $3}')
    }
    #
    Check_CCcam
    if [ "$PID" = "" ]; then
    cd $CCCAM_EXECUTABLE_PATH
    ./$NAME_OFF_CCCAM_EXECUTABLE -C $CCCAM_CONFIG_FILE_PATH/CCcam.cfg

    fi
    exit 0

    ###################################
    Ricordiamoci adeguati permessi con il comando:
    Quote:

    sudo chmod 755 /usr/bin/checkcccam.sh

    L'uso è semplice. quando eseguito questo script controlla che l'emulatore CCcam.x86 sia in esecuzione...in caso contrario lo riavvia.
    E' chiaro che tale script per poter svolgere egregiamente la propria funzione deve essere eseguito a intervalli regolari di pochi minuti per mantenere sempre sotto controllo l'emulatore.
    A tal proposito useremo crontab adeguatamente configurato in modo da eseguire questo script di controllo ogni 5 minuti.
    Quindi procediamo a configurare crontab con il comando:

    Quote:

    sudo crontab -e

    (se vi chiede che editor di testo usare, chiaramente date opzione 2 ovvero "nano)

    e vi si aprirà un file con il seguente contenuto:

    Quote:

    # m h dom mon dow command
    quidi vuoto...voi dovrete impostare una sola riga in modo che il file sia così:
    Quote:

    # m h dom mon dow command

    */05 * * * * /usr/bin/checkcccam.sh

    Questo setup impone al sistema di eseguire ogni 5 minuti lo script checkcccam.sh

    Il sistema è praticamente pronto.
    Opterei per un riavvio totale di tutto il server ogni 24 ore in modo da ripulire cache e files temporanei...
    Per fare ciò basta aggiungere un altra riga in crontab.
    date ancora il comando:

    sudo crontab -e

    e strutturate il contenuto così:

    Quote:

    # m h dom mon dow command
    */05 * * * * /usr/bin/checkcccam.sh
    00 05 * * * /sbin/reboot

    Alle 5 del mattino il sistema si riavvierà in automatico.

    FASE 5 (opzionale) - Firewall

    Anche se non strattamente necessario è buona prassi implementare un minimo di firewall al sistema per evitare accessi indesiderati.
    Sarà mia cura prossimamente spiegarvi anche l'uso di FAIL2BAN...un programmino carino carino che eliminerà in automatico gli utenti di CCcam indesiderati.
    Comunque una configurazione di un firewall base con l'utilizzo di iptables lo strutturerei così.

    Create uno script chiamandolo firewall.sh in /usr/bin col comando:
    Quote:

    sudo nano /usr/bin/firewall.sh

    all'interno del file copiate questo:
    Quote:
    ########################################
    #!/bin/bash

    # imposta le regole di base
    iptables -P INPUT DROP # chiude tutte le connessioni in ingresso
    iptables -P FORWARD DROP # chiude tutte le connessioni in forward
    iptables -P INPUT -i lo -j ACCEPT #apre tutto sull'interfaccia di loopback
    iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

    # imposta regole per l'ingresso
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT #apre la porta 22 SSH
    iptables -A INPUT -p tcp --dport 12000 -j ACCEPT #apre la porta 12000 in TCP necessaria al traffico cardserver
    iptables -A INPUT -p tcp --dport 8080 -j ACCEPT #apre la porta 8080 per accesso alla webif

    ###############################################

    Salvate e chiudete e date al file i soliti permessi con il comando:

    Quote:

    sudo chmod 755 /usr/bin/firewall.sh

    e fate in modo che il firewall venga eseguito all'avvio con il comando:
    Quote:

    sudo update-rc.d firewall.sh defaults

    Ora avete un server funzionante con controllo dell'emu ogni 5 minuti che si riavvia tutte le mattine alle 5:00 AM con un piccolo firewall di protezione.
    Buon smanettamento

    RELEATED TOPICS:

    WinSCP:

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?


    Putty:

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?




    FASE 6 [FONT=&quot]FASE INSTALLAZIONE OSCAM compilata[/FONT]

    [FONT=&quot]USCIRE DA UTENTE ROOT E LOGGARSI UTENTE NORMALE[/FONT]

    sudo mkdir /home/cccamserver/libusb
    cd /home/cccamserver/libusb
    sudo wget

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?



    sudo tar jxvf libusb-1.0.6.tar.bz2
    cd /home/
    cccamserver/libusb/libusb-1.0.6
    sudo ./configure --prefix=/usr &&make
    [FONT=&quot] sudo make install

    [/FONT]



    DOWNLOAD OSCAM SOURCES AND COMPILE
    ************************************
    cd /home/cccamserver/sources
    sudo svn co

    Dieser Link ist nur für Mitglieder!!! Jetzt kostenlos Registrieren ?

    oscam-svn
    cd oscam-svn
    sudo mkdir build_dir
    cd build_dir
    sudo cmake .. # se volete la WebIf = sudo cmake -DWEBIF=1 ..
    sudo make


    [FONT=&quot]sudo cp oscam /usr/local/bin


    [/FONT]
    [FONT=&quot]USCIRE DA UTENTE NORMALE E LOGGARSI UTENTE ROOT[/FONT]
    [FONT=&quot]

    [/FONT]
    Sempre da terminale dare il comando


    nano /etc/rc.local


    una volta aperto il file, inserire le seguenti linee PRIMA di exit



    /usr/local/bin/oscam
    sleep 10

    /usr/local/bin/CCcam.x86


    Ora le emu si avviano in automatico quando avviate il pc, da notare che la cccam parte 10 secondi dopo la oscam.




    [FONT=&quot]apt-get install libpcsclite-dev [/FONT]
    [FONT=&quot]apt-get install libssl-dev[/FONT]
    [FONT=&quot]cd /usr/lib[/FONT]
    [FONT=&quot]ln -s libcrypto.so.0.9.8 libcrypto.so.6[/FONT]
    [FONT=&quot]ln -s libssl.so.0.9.8 libssl.so.6[/FONT]





     
    Zuletzt bearbeitet: 20. März 2011
    #1
    franz62, vivito16, yaleman und 11 anderen gefällt das.
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen