giovedì 27 dicembre 2018

Condivisione di Internet

Esempio reale:
Ho un computer con il wifi connesso ad internet e voglio condividere la connessione tramite ethernet:

Fonte citata:
https://ubuntrucchi.wordpress.com/2008/02/23/condividere-la-connessione-internet/
https://wiki.archlinux.org/index.php/Internet_sharing_(Italiano)

Sul computer NAT
do il comando "ip -a" per vedere come si chiamano le mie interfacce di rete.
l'interfaccia wifi si chiama "wlp1s0" mentre l'interfaccia di ethernet "enp2s0".
la "enp2s0" va configurata con ip manuale ad esempio 192.168.1.1 e sottorete il gateway lo si può lasciare vuoto



sul computer ospite bisogna configurare il collegamento ethernet con ip fisso (ad esempio 192.168.1.2) gateway verso il computer NAT (192.168.1.1) e dns qualsiasi (se non li sai, utilizzi quelli del NAT interrogando il NAT con il comando $ cat /etc/resolv.conf).

Sul computer NAT bisogna battere i seguenti comandi come root (il sudo non basta)

# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -A FORWARD -i wlp1s0 -o enp2s0 -j ACCEPT
# iptables -A FORWARD -i enp2s0 -o wlp1s0 -j ACCEPT
# iptables -t nat -A POSTROUTING -o wlp1s0 -j MASQUERADE

per maggiori dettagli sui comandi puoi fare riferimento ai seguenti link:
https://ubuntrucchi.wordpress.com/2008/02/23/condividere-la-connessione-internet/
https://wiki.archlinux.org/index.php/Internet_sharing_(Italiano)

A questo punto tutto dovrebbe funzionare

sabato 27 ottobre 2018

LXDNA18 - Linuxday 2018



Linux Day Napoli 2018
 Programma della giornata:

10:30 - 11:00: Ambra Lanzo / Antonio Iandoli (NetCom Group)

11:00 - 11:30: Alessandro Verna / Ass. Enrico Panini (Comune di Napoli) - La Blockchain applicata alle procedure amministrative del Comune di Napoli

11:30 – 12:00: Paolo Patierno (RedHat) - Take the Open Source road: learn, share, grow

12:00 – 12:30: Marco Ferrigno (NaLUG) - Il paradigma DevOps: l'evoluzione dei professionisti IT e i toolkit opensource

12:30 – 13:15: Gaetano Perrone (UniNA) ft. Gabriele Previtera (NaLUG) - DSP: Docker Security Playground

14:30 – 15:00: Giovanni Di Dio Bruno (NaLUG) - Linux in robotics: tanti robot pochi closed source

15:00 – 15:30: Marcello Marino - JACK Audio Connection Kit

16:00 – 16:30: Christian Basile - I Databases sognano cartelle elettroniche?

16:30 – 17:00: Michele Domenico Todino (UniSA) - Esperienza, distance education ed edugames

martedì 11 settembre 2018

La mia workstation 2018

mi appresto a installare debian9 sulla mia macchina d'ufficio.
Debian 8 ha resistito bene 2 anni e mezzo. Qualche segno di stanchezza lo mostra all'avvio con un processo che s'impalla per 90 sec; il sistema di update appesantito da troppe installazioni.
Inoltre a causa della rottura del disco di swap-backup la macchina sta funzionando da più di un anno senza swap
Vediamo come ho strutturato la macchina:

Dischi:

disco sda "TANK" da 1 TERA  partizionato da 400 ntfs e 600 ext4 per le copie di backup (sarebbe il caso di togliere la partizione ntfs, poco utilizzata estendendo la ext4 ad 1 GB)
disco sdb da 250GB SSD di sistema con partizione efi; partizione di sistema da 40GB e partizione home da 200GB. dopo 2 anni lo spazio è al 60% sia per il sistema che per la home.
disco sdc da 1T per recupero dati ext4
***debian9*** disco sdx  da 160GB: 20GB per lo swap (due volte la memoria) e 140GB per lo storage delle macchine virtuali.




App da ricordare: 

Atom [ok]
Conky Manager [ok]
Owncloud [ok]
Dropbox [OK]
Eboard (scacchi)
Gimp [compreso]
Inkscape [compreso]
Master pdf editor - passato a pdfmod che è opensource
Opera [ok]
Play on linux
R [OK]
Remmina [non c'è! ma l'ho installato lo stesso]
Skype
Teamviewer [ok]
VirtualMachineManager (virt-manager) [ok]
WPS (suite office)? forse meglio provare qualche altra alternativa
Xboard (scacchi)

Stampanti:
Kyocera_TASKalfa_3511i

linee di comando utili all'avvio di debian:

ettore_history.txt:
sudo mount.cifs //192.168.14.83/CartellaEttore/ /mnt/cifs -o username=ettore,nounix
root_history.log:
screen -f -da -m syncthing -no-browser
chown -R ettore ownCloud/Lavoro/

linee di comando utili per backup
rsync -ar --delete --progress --exclude "Scaricati" --exclude ".cache" --exclude ".local/share/Trash/" /home/ettore/ /media/TANK_L/backup_ettore/
rsync -avr --delete --progress ownCloud/Lavoro/ Dropbox/ownCloud/Lavoro/

Osservazioni ulteriori

L'adattatore wifi usb Edimax EW-7811UN non mi funziona correttamente. Ho seguito il seguente Post e le cose ora funzionicchiano.

giovedì 30 agosto 2018

Ripristino password di root e utente in debian 9 - stretch

Antefatto

Prima dell'estate decido di formattare e installare debian 9 sulla mia macchina in ufficio. Installo, nuova password. Le piccole buone abitudini. Algoritmo mentale per scegliere la password giusta e che possa ricordare. Configuro e ripristino tutti i dati e poi vado in vacanza. Rientro ma non ricordo correttamente la password. Provo svariate combinazioni, niente! Devo per forza reimpostare le password di root e user. Come fare?

Aggiornamento nov2020

https://itsfoss.com/how-to-hack-ubuntu-password/

Istruzioni rapide

Basta googolare che trovi tutto, come al solito.
questo link https://www.itzgeek.com/how-tos/linux/debian/how-to-reset-root-password-on-debian-9-stretch.html spiega bene come fare.
in sintesi:
dal GRUB premi "e"
scendi fino alla line LINUX e aggiungi “init=/bin/bash“ (senza le virgolette)
riavvii con F10 o Ctrl+x
a questo punto, se non ho capito male sei in modalità chroot quindi monti il filesystem con "mount -o remount / "
quindi usi il comando passwd per root e user
digita reboot e incrocia le dita

piccoli effetti collaterali da correggere

cambiando la password del tuo account si sputtana il portachiavi delle tue password nel desktop environment. Per mettere a posto la cosa devi rifare il portachiavi. Trova nella tua home la cartella keyrings e cancellala o rinominala e riavvia. Non mi è stato possibile recuperare il portachiavi.
Ho dimenticato pure la password Samba (ho usato lo stesso algoritmo mentale BACATO). In questo caso basta digitare da root smbpasswd -a iltuousername e ti verrà richiesto di inserire la nuova password.

Osservazione

qualcuno può pensare che accedere con pochi passaggi ad un computer possa essere un fragilità nella sicurezza del computer. Non sono d'accordo. La procedura è valida solo in locale e non può essere eseguita in remoto. Si può facilmente rendere inespugnabile il proprio PC criptando il file system ma a questo punto, se non hai motivi seri, rischi per eccesso di zelo, di dover riformattare tutto.

venerdì 10 agosto 2018

condivisione di cartelle in rete con Samba e Fedora

SAMBA Protocollo per Condividere file in rete anche con il mondo windows.

Agosto 2018 - Purtroppo è un tarlo enorme: ne farei volentieri a meno ma è necessario specialmente per chi come me utilizza antiche macchine windows virtualizzate per far funzionare SW ed HW non supportati più.

E' una seccatura perché ogni qualvolta mi trovo a cambiare sistema operativo perdo molte ore a far funzionare SAMBA. Per un po' di anni sono stato tranquillo ma poi con l'avvento di Samba 4.5 (venendo dal 4.1) qualcosa è cambiato e Windows XP non si connette più.

Comunque, per una installazione rapida e minimale di Samba per mettere in condivisione file in rete seguite questa guida:

https://wiki.debian.org/SambaServerSimple 

lasciate stare samba-tools (almeno per ora) perchè non riescono a portare a termine i comandi e visualizzano errori nel db di samba forviandovi.
Invece per ripristinare la compatibilità di SAMBA con windows XP dovete aggiungere righe al /etc/samba/smb.conf :

server max protocol = NT1
lanman auth = yes
ntlm auth = yes

nella sezione [GLOBAL]
ATTENZIONE che ciò compromette la sicurezza del protocollo

Osservazioni del 2013 su Fedora (16?) con SELINUX:


Abilitate nel firewall le due connessioni Samba (client e server)

e poi bisogna dire a SELINUX che deve lasciare stare Samba (ci ho messo più di un anno per capire che SELINUX creava casini con Samba)
Sempre da root
setsebool -P samba_enable_home_dirs on
setsebool -P samba_enable_home_dirs on

attenzione che selinux potrebbe aggiornare le policy di sicurezza per samba e quindi conviene sempre sfogliare il file smb.conf digitando sempre da root

nano /etc/samba/smb.conf

ricordo che il demone di samba è smbd

lunedì 6 agosto 2018

una utility per il controllo del disco

ago 2018
da linea di comando su Debian
smartctl
fa controlli approfonditi o rapidi dei dischi 

ott 2012
GSmartControl ti aiuta a verificare lo stato del disco e a correggere eventuali settori danneggiati. Testato su fedora con il mio disco che ha lo smart in allarme ma che continua a funzionare

sabato 24 marzo 2018

comandi per il backup e snellimento della folder Dropbox

Il problema è annoso: lo spazio su Dropbox è limitato e prima o poi si esaurisce e quindi ci si trova davanti a un bivio. O si paga o si ottimizza lo spazio.
Seguendo poche semplici regole si può rapidamente ottimizzare lo spazio e lasciare in Dropbox ciò che è necessario tenere sincronizzato e spostare in una folder "archivio" ciò che oramai non viene più sincronizzato.

da un client Dropbox su Linux.
Verifico che l'account è sincronizzato;
lancio il backup su macchine remote o in locale con comandi del tipo:

rsync -avr --progress 'ssh -l ettore' --exclude ".dropbox.cache/" Dropbox/ 192.168.14.76:/media/TANK_L/backup_mara/Dropbox

incomincio a cancello i file in maniera selettiva, cercando (find) i tipi da archiviare e quelli più vecchi che uso poco. Ad esempio

find Dropbox/ -type f -name '*.enc' -delete
find Dropbox/ -type f -name '*.p7m' -delete
fine Dropbox/ -type f -mtime +750 -delete

con ncdu /Dropbox controllo la dimensione della folder e diminuendo il parametro di -mtime sfoltisco la folder Dropbox fino al valore che ritengo ottimale.

Infine riporto un utile comando per rsync che ricerca per data e sincronizza su un'altra cartella: file piu' vecchi di 2000 giorni
find Dropbox/ -mtime +2000 >/tmp/rsyncfiles
rsync -Ravh --files-from=/tmp/rsyncfiles . Documenti/Archivio_up2017/

mercoledì 7 marzo 2018

virtualizzazione: nozioni di base

Nell'universo della virtualizzazione di sistemi operativi e architetture di computer e' facile fare confusione.
E' utile fare un po' di ordine nelle definizioni

LIVELLO 0: piattaforma di virtualizzazione x86 o hypervisor: vmware, virtualbox, qemu

LIVELLO -1: kernel - based - Virtualmachine (KVM): infrastruttura di virtualizzazione per kernel che unita a qemu puo' virtualizzare diverse architetture e sistemi operativi sotto linux.

LIVELLO 1: tool di gestione di hypervisor: libvirt
LIVELLO 2: layer di gestione libvirt: virsh, virtual machine manager, gnome boxes, ovirt

Dalla riunione NALUG del 5 maggio 2018

Il primo concetto chiave esposto è stato quello della differenza tra
virtualizzazione e paravirtualizzazione -
https://stackoverflow.com/questions/21462581/what-is-the-difference-between-full-para-and-hardware-assisted-virtualization

Gli esempi citati sono stati i seguenti

- virtualbox - https://www.virtualbox.org/
- kvm - https://www.linux-kvm.org/page/Main_Page
- qemu - https://www.qemu.org/
- libvirt - https://libvirt.org/
- virt-manager - https://virt-manager.org/
- proxmox - https://www.proxmox.com/en/ 

Proxmox slides LDNA16 -
https://materiale.nalug.net/02_eventi_pubblici/linuxday_napoli/linuxday2016/03_Francesco_Taurino_-_Proxmox_pa_e_pmi.pdf 


Proxmox video LDNA16 - https://www.youtube.com/watch?v=lSPZoh5msHc

- xen - https://www.xenproject.org/

venerdì 9 febbraio 2018

Archeologia informatica, applicativo di fine anni 90

è una collezione di immagini di CD che hanno data 1999. Gira su DOS ma non basta forse c'e' bisogno di qualche funzionalità' grafica di windows 3.11 o 95. Purtroppo non trovo un system requirement che mi permetta di capire come configurare le cose.

bisogna configurare l'ambiente secondo il CDSETUP.BAT
e poi inserire il CD F
provo con DOS box emulator
purtroppo mi fermo alla schermata seguente

dove capisco che non riconosce il percorso dei dischi come il cdrom.
ciò lo capisco anche dal file di diagnostica "PIPPO" che produce prima di chiederti di inserire il cd F

Usiamo invece un approccio più sofisticato: la virtualizzazione QEMU

questa è un'ottima guida per creare rapidamente una macchina DOS
http://gunkies.org/wiki/Installing_MS-DOS_on_Qemu

impari ad usare la QEMU console per cambiare dischetti e CDROM
(qemu) info block 
https://www.linux-kvm.org/page/Change_cdrom
https://superuser.com/questions/97491/how-to-change-the-floppy-image-of-qemu
(qemu) change floppy0 os.img

impari a creare un floppy disk virtuale
https://www.linux.org/threads/create-img-files.11174/

il problema nasce sul cdrom perchè il dos non riconosce in automatico il cdrom, bisogna installarlo. In aiuto viene il seguente tutorial
http://manmrk.net/tutorials/DOS/cdrom.htm per cercare il driver giusto per il cdrom
io ho utilizzato questo setup.exe che mi ha ffinalmente permesso di vedere e caricare virtualmente il CDROM.

Adesso tutto si avvia correttamente ma mi scontro con la risoluzione video DOS che e' troppo bassa. Bisogna adottare un enhanchement grafico successivo al DOS, la risoluzione ottimale dovrebbe essere 640X480. Provo ad installare windows 3.11

ma il risultato non cambia, dovrei cambiare le impostazioni video di win 3.11 ma la cosa non è così immediata, preferisco passare a win95-OSR2
Ho trovato un portale con tutti i sistemi operative Microsoft:
https://winworldpc.com/library/operating-systems
c'è da sbizzarrirsi
Win95 utilizza una versione avanzata di DOS conb questa dovrei trovare l'environment giusto.
Speriamo....

qemu-system-x86_64 -hda win95.disk -m 64 -L .

sarebbe da provare anche il freedos forse un po' più avanzato del dos
https://en.wikibooks.org/wiki/QEMU/FreeDOS

lunedì 15 gennaio 2018

installazione Archlinux con NALUG

Nel programma didattico NALUG 2018 

archlinux è distribuito a 64 bit ma è possibile anche installare versioni a 32bit. All'avvio della ISO non hai ambiente grafico.
Cio che viene indicato di seguito è una validazione della guida all'installazione di arch ufficiale fatta da uno che non ha mai installato Arch ne altri sistemi Linux "a Manella".  L'esercitazione è fatta su una macchina virtuale qemu-kvm creata con virt-manager.

Preinstallazione - tutto ciò che vafatto prima di fare il "Change root"

appena si avvia la ISO la prima cosa da fare è mettere a posto il layout tastiera
per settare la tastiera:
# localectl set-keymap --no-convert it

inoltre poichè sono su di una macchina virtuale remota, vorrei continuare connettendomi in ssh per non utilizzare l'ambiente grafico visto che non serve.
Quindi
# systemctl start sshd

per verificare se il sistema si avvia con EFI:
# efibootmgr
se risponde: "EFI variables are not supported by this system" allora vuol dire che non c'è EFI

andiamo avanti considerando che il sistema è non EFI
partizionamento si possono usare sia parted che fdisk:
parted può fare i filesystem
fdisk non lo fa può solo creare partizione

vediamo quante partizioni fare:
  • minimo di partizioni:solo quella di root
  • numero classico di partizioni: root, swap e home

entriamo nell'ambiente parted digitando
# parted
(parted) print all ci fa vedere i dischi
(parted) select /dev/sdx selezioni il disco su cui lavorare
(parted) mklabel msdos crei una tabella delle partizioni MBR
(parted) mkpart primary ext4 0% 100% crei la partizione formattata ext4 sul 100% del disco.
Ognuno può organizzarsi il disco come meglio crede, io ho creato una unica partizione ext4

A questo punto sembra ci sia un baco di PARTED che non crea il filesystem
quindi diamo il comando
# mkfs -t ext4 /dev/vda1
che crea il filesystem ext4
montiamo il disco
# mount /dev/vda1 /mnt

Installazione - organizziamo le cose sul disco affinchè Arch funzioni al prossimo avvio.

lanciamo il comando# pacstrap /mnt base base-devel
così abbiamo installato il gruppo di pacchetti di base per il semplice funzionamento del sistema operativo

generiamo l'Fstab sul disco necessario per montare i dischi all'avvio
# genfstab -U /mnt >> /mnt/etc/fstab
controlliamo cosa ha generato in /mnt/etc/fstab

Spostiamoci in chroot in modo da modificare i setup del SO sul disco
# arch-chroot /mnt
a questo punto non ho più come riferimento il cdrom...

configuriamo il time-zone italiano in maniera persistente
# ln -sf /usr/share/zoneinfo/Europe/Rome /etc/localtime

L'orologio invece sarà settato sull'ora UTC secondo il comando
# hwclock --systohc (oppure hwclock -w da provare)
in italia, durante l'ora solare (inverno) siamo un'ora in avanti rispetto all'UTC

bisogna poi generare dei file locali per le impostazioni di lingua e tastiera:
togli il commento da it_IT.UTF-8 UTF-8 in /etc/locale.gen dopodichè dai il comando
# locale-gen
scrivi nel file /etc/locale.conf
LANG=it_IT.UTF-8
per il layout della tastiera  scrivere nel file /etc/vconsole.conf
KEYMAP=it

settaggio del nome del Computer (hostname):
scrivi nel file /etc/hostname
myhostname (il nome del tuo computer)

configurazione di rete: di default è in DHCP...

root password
# passwd

BOOT LOADER:
devi installare il grub nell'mbr del disco
#pacman -S grub
# grub-install --target=i386-pc /dev/sdv
ora bisogna generare il main configuration file grub.cfg con il comando
# grub-mkconfig -o /boot/grub/grub.cfg
A questo punto sembra che i giochi siano completi per il primo avvio.

Esci da chroot con
#exit

e riavvia
Risultato:
non parte, vede il grub ma non trova il disco per caricare il kernel...
sembra che il problema sia legato alla virtualizzazione.
Che sola! Bhe questo è proprio il bello di queste esercitazioni.