Archive › Howto
freenas_logo

Copia chiave ssh su freenas

FreeNas utilizza il filesystem di root in modalità sola lettura.
Quando andiamo a copiarci una chiave ssh per poter copiare via scp o per connetterci attraverso ssh senza la richiesta della password dobbiamo fare quanto segue:

Montare il filesyste in lettura/scrittura:

workstation# ssh [email protected]
[email protected]'s password: xxxxxx
nas# mount -o rw /dev/ufs/FreeNASs1a

copiare, dalla macchina con cui ci collegeremo, la chiave ssh:

workstation# ssh-copy-id [email protected]

 
montare nuovamente il filesystem del nas in sola lettura:

nas# mount -o ro /dev/ufs/FreeNASs1a

fa-fa-fatto.

Comments ( 0 )
ramdisk-150x150

Ram Disk sul Mac

Con Ram Disk si indica una porzione di memoria RAM utilizzata come se fosse una normale unità a dischi.
Ovviamente, utilizzando memoria volatile, una volta che il Mac è stato riavviato o spento, tutti i dati che erano presenti nel disco virtuale saranno persi.

Ecco come ottenere un disco su Ram per il vostro Mac.

Aprite un terminale e digitate (o copiaincollate) queste istruzioni per una Ram Disk da 4GB:

diskutil erasevolume HFS+ “ramdisk” `hdiutil attach -nomount ram://8000000`

Se vogliamo modificare la dimensione della Ram Disk possiamo variare l’ultimo parametro.
2000000 per una Ram Disk da 1GB, 4000000 per una Ram Disk da 2GB.

Per rimuovere la Ram Disk è sufficiente espellerla come un comune disco hot-plug.

Comments ( 0 )
Logo_di_Mozilla_Thunderbird

Backup profilo di Thunderbird su OsX

Per effettuare il backup del profilo di posta su OsX dobbiamo per prima cosa trovare il profilo.

Se avete effettuato l’installazione standard il vostro profilo di posta si troverà nella cartella:

/Users/UTENTE/Library/Thunderbird/profiles

dove, ovviamente, UTENTE è il vostro username.

Per aprire una finestra del Finder a quell’indirizzo potete, sempre dal Finder, andare sul menù “Vai“, scegliere la voce “Vai alla cartella…” ed inserire l’indirizzo:

~/Library/

(per inserire il carattere ~ usate ALT-5)

Nella finestra troverete la cartella “Thunderbird” che contiene il file “profiles.ini” e la cartella con il profilo stesso. Per essere certi che quella è realmente la cartella contenente il profilo potete controllarne la dimensione o il contenuto.

Potete a questo punto fare click con il bottone destro del mouse e scegliere “Comprimi Thunderbird” per ottenere un archivio compresso della cartella di cui effettuare il backup. Copiate l’archivio su un supporto esterno o su una condivisione in rete.

Se invece l’installazione di Thunderbird non è stata effettuata in modo standard oppure volete controllare ulteriormente dove risiede il profilo contenente la posta potete procedere così:

Aprite Thunderbird, menù Strumenti >> Impostazioni Account.

Nella parte sinistra troverete gli account di posta configurati. Per ogni account potete controllare, alla voce “Impostazioni server“, la path completa della cartella locale (appena selezionata la voce “Impostazioni server” trovate questo path in basso a destra della stessa finestra)

Ripristino

Per effettuare il ripristin reinstallate Thunderbird e avviatelo. Appena richiede di configurare gli account di posta annullate l’operazione e chiudete completamente il programma.

Andate di nuovo nella cartella della libreria:

~/Library/

e scompattate l’archivio creato in precedenza.

Se avete intenzione di mettere il profilo di posta in un’altra posizione potete semplicemente spostare la cartella xxxxxxxx.default contenuta nella cartella profiles dove volete (e magari rinominarla con un nome un pò più comprensibile) e modificare il file di testo che definisce la posizione dei profili – profiles.ini – che trovate sempre dentro la cartella ~/Library/Thunderbird/.

In questo file basta modificare il valore del campo IsRelative mettendolo a zero (0) e modificare la path del profilo inserendo la path completa dove avete spostato il profilo contenente la mail (p. es. ~/Posta/MiaPosta)

Per modificare il file di testo potete utilizzare l’ottimo “Fraise” (link su MacUpdate…)

buon divertimento

 

Comments ( 0 )
210px-Python

Estrarre URL immagini da un css

Ecco un banale script python per estrarre gli url delle immagini da un file css
Nel file gli url saranno nella forma: url(‘http://www.qualcosa.com/immagine.png’)

#!/usr/bin/python
import string, os

f=open("file.css", "r")

allf=f.read()

while string.find(allf, 'url') > 0:
    a = string.split(allf, "url(\'", 1)
    b = string.split(a[1], "\')", 1)
    print b[0]
    allf = b[1]
Comments ( 0 )
hdd25

Dump di un disco via rete

Facile ricetta, 1 stella di difficoltà.

se vogliamo effettuare una copia di un disco locale su una macchina remota:

dd if=/dev/sdX | ssh host.destinazione.com dd of=file.dd

se vogliamo anche comprimere:

dd if=/dev/sdX | gzip -1 | ssh host.destinazione.com gzip -dc | dd of=file.dd

🙂

Comments ( 0 )

Growl – compilazione

La nuova versione di Growl per OsX è scaricabile solo a pagamento dal Mac App Store.

Per compilare la versione open source per prima cosa si scarica e installa Mercurial.

da terminale creiamo una cartella dove mettere i nostri sorgenti e poi cloniamo i sorgenti:

mkdir dev
cd dev
hg clone https://code.google.com/p/growl/

a questo punto, sempre da console:

xcodebuild -project Growl.xcodeproj -target Growl.app -configuration Release

se vengono segnalati degli errori di firma del codice eseguire l’applicazione “Accesso Portachiavi” (Applicazioni/Utility) e, dal menù Accesso Portachiavi scegliere Assistente certificato e poi Crea certificato

Copiare il nome richiesto (“3rd Party Mac Developer…”) e scegliere come tipo di certificato “Firma codice

eseguire di nuovo xcodebuild

🙂

Comments ( 0 )

Debian e qemu/libvirt per la virtualizzazione

Appunti sulla virtualizzazione con debian/64 e qemu/libvirt

Si parte da un’installazione classica (e leggerissima) di GNU/Debian 64 bit.

Il partizionamento di base prevede una partizione di boot da 350MB circa e il resto del disco (o del sottosistema MD) come volume LVM.
La partizione di root è 7,4GB
Lo swap è almeno il doppio della ram.

Se non lo avete ancora fatto, installate le bridge utils:

apt-get install bridge-utils

Per la rete si crea un bridge su cui si connette poi la ethernet fisica (eth0 in questo caso) e su cui si connettono poi le ethernet delle VM:

/etc/network/interfaces
auto lo
iface lo inet loopback
# The primary network interface
auto br0
iface br0 inet static
  address 192.168.1.1
  netmask 255.255.255.0
  network 192.168.1.0
  broadcast 192.168.1.255
  gateway 192.168.1.254
  bridge_ports lan
  bridge_stp on
  bridge_maxwait 0
  bridge_fd 0

Per installare tutto basta:

apt-get install qemu-kvm libvirt-bin virtinst

Per avviare l’installazione di una vm (in questo caso chiamata “monit”) dobbiamo semplicemente creare un disco per la vm:

lvcreate -L8G -n vmdisk-monit vol
oppure
lvcreate --size 4G --name vm-disk vol

A questo punto, avendo creato il disco, possiamo creare la VM:

virt-install -d --name=monit --ram 512 --vnc :0
--disk path=/dev/vol/vmdisk-monit --network=bridge:br0
--os-type=linux --cdrom /ISO/debian-6.0.3-amd64-CD-1.iso

a questo punto per connettervi con VNC alla console dal vostro pc/client potete:

ssh [email protected] -L 5900:127.0.0.1:5900
vnc localhost:0

alcuni comandi utili per la gestione delle vm:

virsh start monit
virsh setvcpus monit 1

se ci sono problemi con il disco appena creato (non riconosciuto):

virsh pool-refresh vol

Per riferimento esistono diversi sistemi per la gestione:

http://archipelproject.org/
http://pve.proxmox.com/

🙂

Comments ( 0 )

INPS UniEMens errore 417

La procedura UniEMens, dietro ad un proxy trasparente basato su squid, potrebbe fallire con errore HTTP 417: Expectation Failed.

Questo errore avviene quando la procedura invia un header che squid (sia versione 2.7 che 3.1) non riesce a gestire correttamente.

La prima soluzione è quella di utilizzare iptables per nattare, senza passare attraverso il proxy, la destinazione delle richieste (www.inps.it: 94.86.41.16):

iptables -A INPUT -p ALL --destination 94.86.41.16 -j ACCEPT

Questa prima soluzione, sinceramente, non è molto carina. Si può operare, invece, direttamente sulla configurazione di squid.

E’ sufficiente inserire la direttiva:

ignore_expect_100 on

nel file di configurazione di squid (solitamente /etc/squid/squid.conf).

Nel caso in cui il vostro firewall sia un ipFire potete aggiungere la direttiva nel file /var/ipfire/proxy/advanced/acls/include.acl e poi riavviare il proxy dall’interfaccia web.

🙂

Comments ( 0 )

Permessi cartelle e file

E’ il più banale dei problemi eppure tutte le volte ci perdo il capo.

Cambiare in una cartella, in modo ricorsivo, tutti i diritti di file e cartelle impostando, per esempio, 0660 per i file (r w – r w – – – ) e 0770 per le cartelle (r w x r w x – – ).

facciamo un bel:

chmod -R 0660 *
find . -type d -exec chmod 0770 '{}' \;

ed è tutto fatto!

🙂

Comments ( 0 )

Debian samba server connesso ad Active Directory

Per connettere un server samba (basato su debian, ovviamente) ad un dominio Active Directory possiamo utilizzare i tool di LikeWise:

scarichiamo i tool dal sito BeyondTrust oppure da qui nelle versioni per i386, amd64 (e anche per OsX)

rendiamo eseguibile lo script

# chmod a+x LikewiseOpen-6.0.0.8388-linux-amd64-deb.sh

e lo eseguiamo:

# ./LikewiseOpen-6.0.0.8388-linux-amd64-deb.sh

e seguiamo tutte le istruzioni.
al termine della procedura connettiamo il server al dominio Active Directory (qui il dominio si chiama ”dominio” ed il suo fqdn è ”dominio.fqdn.com”):

# domainjoin-cli join dominio.fqdn.com administrator

riavviamo.

possiamo connetterci al server con un utente di dominio utilizzando la sintassi:

# ssh dominio\[email protected]

a questo punto, dopo essere diventati root con ”su” possiamo controllare lo stato del sistema:

# /opt/likewise/bin/lwsm list
lwreg       running (standalone: 1185)
dcerpc      running (standalone: 1718)
eventlog    running (standalone: 1730)
lsass       running (standalone: 1493)
lwio        running (standalone: 1344)
netlogon    running (standalone: 1285)
rdr         running (io: 1344)

e

# /opt/likewise/bin/domainjoin-cli query
Name = nomeserver
Domain = DOMINIO.FQDN.COM
Distinguished Name = CN=NAS,CN=Computers,DC=dominio,DC=fqdn,DC=com

e con:

# /opt/likewise/bin/lw-get-status
[cut]

per avere informazioni su un utente di dominio possiamo:

# id dominio\nomeutente
uid=278922328(DOMINIOnomeutente) gid=278921729(DOMINIOdomain^users) gruppi=278921729(DOMINIOdomain^users)

per controllare ulteriormente la presenza di un utente:

# /opt/likewise/bin/lw-find-user-by-name DOMINIO\nomeutente
User info (Level-0):
====================
Name:              DOMINIOnomeutente
SID:               S-1-5-21-2525912273-188867155-4035306855-1112
Uid:               278922328
Gid:               278921729
Gecos:             Nome Utente
Shell:             /bin/sh
Home dir:          /home/local/DOMINIO/nomeutente
Logon restriction: NO

e

# wbinfo -i DOMINIO\nomeutente
DOMINIOnomeutente:x:278922328:278921729:Nome Utente:/home/local/DOMINIO/nomeutente:/bin/sh

e testiamo la connessione con password:

 wbinfo -a DOMINIO\nomeutente%PASSWORD
plaintext password authentication succeeded

adesso che l’autenticazione funziona perfettamente passiamo a modificare la configurazione di samba, con l’aggiunta di una condivisione di esempio:

/etc/samba/smb.conf:
# Global Settings
[global]
   workgroup = DOMINIO
   server string = %h server
# Authentication #
   security = ADS
   realm = DOMINIO.FQDN.COM
   machine password timeout = 0
   encrypt passwords = true
   passdb backend = tdbsam
   obey pam restrictions = yes
   unix password sync = yes
   pam password change = yes
# condivisione
[Condivisione]
   comment = Condivisione
   path = /raid/condivisione
   browseable = yes
   read only = no
   create mask = 0660
   directory mask = 0770
   valid users = @DOMINIOdomain^users

modifichiamo i permessi ed il proprietario della condivisione:

# chmod 0770 /raid/condivisione
# chown DOMINIO\nomeutente:DOMINIO\domain^users /raid/condivisione

controlliamo se la versione è corretta:

# /opt/likewise/bin/samba-interop-install --check-version
Found smbd version 3.5.6
Samba version supported

adesso dobbiamo usare il comando magico:

# /opt/likewise/bin/samba-interop-install --install
# service samba restart
# service winbind restart

testiamo la connessione con il dominio:

# net ads testjoin
Join is OK

tutto ok?

🙂

Comments ( 0 )