Articoli con tag Sistemi operativi

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.

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

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

virt-install --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

Per riferimento esistono diversi sistemi per la gestione:

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

🙂

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.

🙂

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!

🙂

ISC DHCP e log dei lease

Ecco come fare per loggare i client che richiedono un ip al nostro server dhcp in modo moooolto elegante!

nel file /etc/dhcp/dhcp.conf si aggiunge una direttiva come questa:

on commit {
  set ClientIP = binary-to-ascii(10, 8, ".", leased-address);
  set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
  log(concat("Commit: IP: ", ClientIP, " Mac: ", ClientMac));
  execute("/root/scripts/dhcp-event", "commit", ClientIP, ClientMac);
}

e poi creiamo un semplice script (/root/scripts/dhcp-event):

#!/bin/bash
date=$(date)
echo "date: "$date >> /tmp/dhlog
echo "orig: "$1 >> /tmp/dhlog
echo "  ip: "$2 >> /tmp/dhlog
echo " mac: "$3 >> /tmp/dhlog
a=$(host $2)
name=$(echo $a | cut -d" " -f5)
echo "name: "$name >> /tmp/dhlog

a questo punto è banale prendere questi dati e metterli su un database oppure generare la lista di conversione ip/nomi per sarg (così, tanto per fare un esempio…)

le direttive che possiamo usare (in modo pressochè identico) sono:

– on commit
– on release
– on expiry

🙂

a.

Tasto ins su MC nel terminale da OsX

Siamo alle solite.

Uso OsX ed ovviamente sono in terminale su una macchina GNU/Linux.

Il fido MC è sempre presente ma il tasto “ins” è latitante.

Soluzione:

utilizzando l’ottimo iTerm2 si va sulle preferenze, poi su Bookmarks e scegliamo, sulla destra, Keyboard.

a questo punto possiamo premere il tasto “+”, indicare per esempio il tasto F13 come shortcut e come azione scegliamo “send escape sequence”. Mettiamo la sequenza “[2~” nel campo “char to send” e… funziona alla perfezione!

^_^

UMTS Mobile connect con Linux

Oggi ho potuto testare alcune chiavette usb UMTS per l’accesso ad internet con un portatile Linux

Il sistema operativo installato è Debian/GNU Linux con desktop GNOME3.

HUAWEI mod. K3565 (Vodafone branded)

HUAWEI mod. E160G (3 branded)

HUAWEI mod. E1550 (3 branded)

Tutte le tre chiavette (denominate HSDPA USB stick) sono perfettamente funzionanti e non richiedono installazione.

Immagino che lo stesso funzionamento ci sia anche con Ubuntu.

a.

Windows 2008R2 criteri password

Per modificare i criteri delle password in un controllore di dominio Windows 2008R2:

Strumenti di amministrazione -> Gestione criteri di gruppo

espandere la foresta, il dominio e selezionare “Default Domain Policy”, bottone destro del mouse, “Modifica…”

Adesso siamo nell’editor della gestione dei criteri di gruppo.

Espandere “Configurazione del computer” -> “Criteri” -> “Impostazioni di Windows” -> “Impostazioni sicurezza” -> “Criteri account” -> “Criteri password”

Torna all'inizio