Archive for category linux

HOWTO: scopri il tuo IP pubblico tramite terminale

A volte potrebbe servire conoscere il proprio indirizzo IP pubblico. Per chi lavora davanti ad un computer con un browser questa operazione risulta molto semplice: infatti basta che vai su google e scrivi “my public ip” ed avrai a disposizione una miriade di siti che diranno il tuo indirizzo IP. Lo fa persino il mio sito: infatti se guardi attentamente sulla barra di destra troverai una scritta del genere:

Ma per chi non ha un monitor davanti? Chi vuole sapere il proprio indirizzo IP pubblico in uno script? Fortunatamente Linux ha dei comandi da terminale che ti possono aiutare. Qui ti farò vedere tre metodi per prendere il tuo indirizzo IP pubblico da terminale:

  1. Tramite wget:
    wget -q -O - checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
  2. Tramite curl:
    curl -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
  3. Tramite lynx:
    lynx -dump checkip.dyndns.org

Il tutto funziona anche su OSX solo se si installano wget, curl e lynx tramite MacPorts o Fink.

Se conosci altri metodi più efficienti oppure altri siti, commenta! :)

Fonte: go2linux.org



,

View Comments

HOWTO: come redirezionare l’output su file e/o su standard output

Quando si usa la console, soprattutto per gli script, è molto utile saper redirezionare l’output su file o su standard output/error. Questo howto è valido per tutti i sistemi *NIX (linux, unix, osx, bsd, etc) basati su standard POSIX.

Ci sono varie redirezioni, vediamo quali:

  1. Redirezionare l’output in un file:
    echo "hello world" > hello.txt
  2. Redirezionare l’output in un file:
    echo "hello world" | tee hello.txt
  3. Per “appendere” (aggiungere in fondo) l’output in un file si usa il doppio “>”:
    echo "hello world" >> hello.txt
  4. Redirezionare lo standard error in un file e mostrare lo standard output (script.py è uno script che produce uno standard error ed uno standard output)
    ./script.py 2> hello.txt
  5. Redirezionare lo standard error e lo standard output in un file:
    ./script.py 2&> hello.txt
  6. Mostrare e redirezionare lo standard error e lo standard output in un file:
    ./script.py 2>&1 hello.txt

Fonte: linux.byexamples.com

Se hai domande e suggerimenti, commenta oppure contattami



, ,

View Comments

HOWTO: Come sostituire in disco rotto da un RAID software su linux

Se sei un sysadmin oppure ti piace smanettare con linux + dischi + RAID questo howto ti potrebbe essere molto utile. Se hai un RAID, qualunque tipo esso sia, questo howto ti indica come procedere nel sostituire il disco rotto di un RAID. Ovviamente se un disco si rompe, il RAID può decidere autonomamente di espellerlo da solo. A volte questo non succede e lo si deve fare a mano. Ecco come:

Supponiamo che il disco da rimuovere sia /dev/sda

  1. Manda in stato di fail il disco su tutte le partizioni in cui è coinvolto (qui nell’esempio 3 partizioni):
    mdadm /dev/md0 --fail /dev/sda1
    mdadm /dev/md1 --fail /dev/sda2
    mdadm /dev/md2 --fail /dev/sda3
  2. Attendi il resync (questa operazione può richiedere molto tempo) tramite:
    cat /proc/mdstats
  3. Rimuovi dal RAID il disco rotto:
    mdadm /dev/md0 --remove /dev/sda1
    mdadm /dev/md1 --remove /dev/sda2
    mdadm /dev/md2 --remove /dev/sda3
  4. Estrai il disco /dev/sda
  5. Copia l’MBR (uguale su tutti i dischi) in un file:
    dd if=/dev/sda of=mbr bs=512 count=1
  6. Inserisci il nuovo disco
  7. Copia l’MBR sul nuovo disco appena inserito:
    dd if=mbr of=/dev/sdf
  8. Immetti il nuovo disco nel RAID:
    mdadm /dev/md0 --re-add /dev/sdf1
    mdadm /dev/md1 --re-add /dev/sdf2
    mdadm /dev/md2 --re-add /dev/sdf3
  9. Ora il disco appena inserito prenderà il ruolo di quello rotto.

Se hai suggerimenti, problemi, domande, commenta il post oppure contattami! :)

Autore originale: Lorenzo



, ,

View Comments

HOWTO: Configurare VirtualHost su OSX

OSX, come molte distribuzioni linux hanno integrato il webserver Apache. Apache ha centinaia di opzioni e configurazioni disponibili per la gestione di qualsiasi situazione.
Tra queste configurazioni ci sono i VirtualHost, che permettono l’esecuzioni di più siti (www.sito1.com, www.sito2.com) sulla stessa macchina. I siti possono essere suddivisi basandosi sia su nomi differenti sia su IP.
In OSX tutte le configurazioni si trovano dentro la cartella “/etc/apache2/”. I passi da fare per abilitare i VirtualHost sono i seguenti:

  1. Apri un Terminale e digita il comando:
    sudo vim /etc/apache2/httpd.conf
  2. Intorno alla linea 460 c’è questa direttiva
    # Virtual hosts
    #Include /private/etc/apache2/extra/httpd-vhosts.conf

    che dovrà diventare:

    # Virtual hosts
    Include /private/etc/apache2/extra/httpd-vhosts.conf
  3. Il prossimo passo è editare il file con il comando:
    sudo vim /private/etc/apache2/extra/httpd-vhosts.conf
  4. Ora configura il tuo VirtualHost seguendo questa documentazione
  5. Riavvia Apache per fargli rileggere la configurazione. Per fare ciò vai sulle “Preferenze di Sistema -> Condivisione”
  6. Disabilita ed abilita la condivisione Web cliccando sul segno di spunta.
  7. Apri il tuo browser e testa il corretto funzionamento dei VirtualHost

Se hai suggerimenti, correzioni, domande… sai cosa fare! :)



, , ,

View Comments

HOWTO: Installare Tilimi su Linux

Tilimi è una fantastica applicazione che porta il mondo della radio a portata di computer o iPhone. Tilimi è un progetto interamente italiano ed è veramente ben fatto. Tramite un’interfaccia chiara e semplice puoi scegliere il canale che vuoi (il corrispettivo della frequenza per la radio) vedere chi è collegato in quel canale, premere il tasto e parlare con le persone di quel canale. Ovviamente la comunicazione è half-duplex, come nella comunicazione classica radioamatoriale.

tilimi_logo
Logo di Tilimi

L’applicazione è disponibile per tre piattaforme: Macintosh, PC ed iPhone. Io l’ho installato su iPhone (qui per scaricarlo) e su Mac (qui per scaricarlo). Noto con dispiacere che l’applicazione NON è disponibile per altre piattaforme tipo GNU/Linux, Symbian, Android, etc. La prima cosa che ho provato è stato installare Tilimi per Windows su Linux utilizzando l’emulazione wine.

Ho effettuato l’installazione su una Ubuntu 9.10, grazie anche all’aiuto di Pablo e alle dritte del team di sviluppo di Tilimi stesso. Ecco i semplici passi per installare Tilimi su Linux:

  1. Installa Wine: “apt-get install wine1.2” (con wine 1.0.X l’installer non funziona)
  2. Scarica il file winetricks seguendo le istruzioni di questa pagina: http://wiki.winehq.org/winetricks
  3. Installa la libreria GDIPLUS: “sh winetricks gdiplus” (necessaria per visuallizare correttamente l’interfaccia)
  4. Installa Tilimi tramite il comando: “msiexec /a TilimiInstaller.exe”
  5. Lancia Tilimi cliccando su “Applicazioni -> Wine -> Programs -> Tilimi -> Tilimi

Ovviamente per far funzionare il tutto devi avere sia il microfono che la scheda audio funzionanti sotto Linux, poichè wine “si appoggia” ai driver audio di Linux.

Se hai domande, delucidazioni, correzioni, sugerimenti o altro, commenta oppure contattami. Sarò felice di rispondere. :)



, , ,

View Comments

HOWTO: autenticazione SSH tramite chiave

Già ho parlato di SSH in questo post. Oggi vedrai impostare il tuo client ed il tuo server per accedere in maniera sicura e veloce tramite l’autenticazione con chiave, piuttosto che con una semplice password. L’autenticazione basata su nomeutente e password rende il sistema potenzialmente insicuro per i seguenti motivi:

  • la password può essere indovinata in qualsiasi momento (tramite attacco brute force)
  • la maggior parte degli utenti non guardano il file secure.log o auth.log per vedere gli accessi non autorizzati
  • per default il server SSH ha l’accesso di root abilitato, mettendo a rischio la sicurezza di tutto il sistema

Per rendere più sicura l’autenticazione puoi usare una coppia di chiavi crittografate al posto dell’autenticazione con password. Esistono due tipi di algoritmi per generare le chiavi ssh: RSA (cripta e firma) e DSA (firma solamente). Personalmente consiglio di usare RSA.

Dunque per generare le chiavi digita:

# ssh-keygen -t rsa
Generating public/private rsa key pair.

A questo punto premi invio se non vuoi dare un nome personalizzato alla chiave:

Enter file in which to save the key (/Users/exampleuser/.ssh/id_rsa):

Se vuoi usare l’algoritmo DSA basta specificare “-t DSA”. Ad un certo punto ti verrà chiesto di inserire una passphrase per proteggere la chiave privata:

Enter passphrase (empty for no passphrase):
 Enter same passphrase again:

La scelta di una passphrase dipenda da situazione a situazione. Se non immetterai nessuna passphrase potrai accedere al tuo server direttamente senza dover digitare niente. Questo però comporta se qualcun altro accede alla tua chiave privata oppure ad una copia può entrare senza nessun problema nel server dove è impostata quella chiave. Se invece decidi di proteggerla con una passphrase dovrai digitare ogni volta la password per sbloccare la chiave privata. Per venirti incontro potresti usare un ssh-agent per memorizzare la password del certificato per un tempo finito come ad esempio un’ora, una giornata, al termine della sessione grafica etc.

Appena finita la creazione delle due chiavi le potrai trovare in “/home/tuo_username/.ssh/” per sistemi GNU/Linux oppure “/Users/tuo_username/.ssh/” per sistemi OSX. Ora devi copiare la tua chiave pubblica nel server remoto tramite il seguente comando:

# scp id_rsa.pub username@server.remoto:/home/username/.ssh/authorized_keys

Questo comando sovrascrive il file authorized_keys nel server remoto. Se vuoi aggiungere la tua chiave ad altre già esistenti fa in questo modo:

  1. copia la chiave sul server remoto
  2. # scp id_rsa.pub username@server.remoto:/home/username/.ssh/
  3. loggati sul server remoto
  4. # ssh username@server.remoto
  5. appendi la tua chiave a quelle esistenti
  6. server_remoto# cd .ssh
    server_remoto# cat ip_rsa.pub >> authorized_keys

Ora devi impostare i giusti permessi. Sul server remoto fai

server_remoto# chmod 700 ~/.ssh
server_remoto# chmod 600 ~/.ssh/authorized_keys

A questo punto puoi accedere al tuo server senza dover far uso della password. Se vuoi proteggere il tuo server da attacchi brute force sulle password puoi dire al server ssh di non accettare l’autenticazione ssh.

ATTENZIONE: prima di fare questa operazione assicurati di avere un accesso secondario alla macchina per non rimanere tagliati fuori

Vai sul tuo server ed edita il file “/etc/sshd_config” in modo da avere questa questa direttiva:

PasswordAuthentication no

Fatto ciò riavvia il server ssh per fargli leggere la nuova configurazione.

Fonte: www.unt.net



, ,

View Comments

Cosa fa linux? Ovviamente culla il tuo bambino!

Forte no?!? :)

Fonte: ubuntulife



View Comments