mercoledì, aprile 30, 2008

Putty Connection Manager Portable

- post<li> - Permalink

La mia passione per le utility portatili non si ferma e oggi volevo parlavi di come integrare e rendere portable Putty Connection Manager (puttycm).

Putty Connection Manager è un tool veramente interessante che aggiunge a Putty quelle due o tre funzioniocine che gli mancavano:
  1. Database delle connessioni che memorizzasse anche nome utente / password.

    Questa effettivamente è una feature un po' border-line per quanto riguarda la sicurezza, da una parte se le password sono memorizzate da qualche parte vuol dire che possono essere usate impropriamente, dall'altra parte tenendosi a mente tutte le password di tutti i propri server si finisce per scriverle in posti ben meno affidabili che non un db criptato come fa puttycm :D

  2. Interfaccia organizzabile tramite tab

  3. Login Automatico. Feature ancora da migliorare un po', a meno di non riuscire a calibrare il perfettamente il timing di risposta dei diversi server in base al carico di rete....

  4. Post - login command. Vedi sopra :D
Per un dettaglio delle caratteristiche si può consultare la pagina (minimale) di Putty Connection Manager.

Ma vediamo come renderlo portable.

A dire la verità i passi da compiere non sono molti, perchè l'applicazione funziona già in modo standalone, bastano semplici accorgimenti per rendere il tutto funzionale.
  1. Scaricare Putty Portable dal relativo sito ed estrarlo dentro alla directory .\PortableApps\;
  2. Scaricare Putty Connection Manager Standalone Executable dentro alla directory appena creata e cioè .\PortableApps\PuTTYPortable ;
  3. Scaricare AES library nella stessa posizione;
  4. Chiudere e ricaricare PortableAppsMenu ;
  5. Ora tra le applicazioni disponibili sarà possbile lanciare sia direttamente Putty Portable che Putty Connection Manager;
  6. Lanciamo Putty Connection Manager che impiegherà un attimo a partire la prima volta;
  7. Andiamo su Tools-> Options...
  8. Putty -> Putty Location -> .\PortableApps\PuTTYPortable\App\putty\PUTTY.EXE
  9. Database -> Database Location -> .\PortableApps\PuTTYPortable\Data\puttycm.dat
  10. Other -> Debug log Location -> .\PortableApps\PuTTYPortable\Data\puttycm.log
That's all folk! :D

Se non vi va di configurarlo tutto a mano potete saltare i punti dall'8 al 10 creando un file di testo dal nome puttycm.reg con il seguente contenuto:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\ACS\PuTTY Connection Manager]
"AppendMode"=dword:00000000
"Log"=".\\PortableApps\\PuTTYPortable\\Data\\puttycm.log"
"Localization"="en"
"ShowTrayIcon"=dword:00000001
"HideMinimized"=dword:00000001
"CheckUpdates"=dword:00000001
"AcceptBeta"=dword:00000001
"UpdateUrl"="http://puttycm.free.fr/update/update.xml"
"SaveDisplayConfig"=dword:00000001
"ConfirmExit"=dword:00000001
"ConfirmCloseDatabase"=dword:00000001
"AutoSave"=dword:00000001
"AutoBackup"=dword:00000001
"EnableHotkeys"=dword:00000001
"AutoActivatePuTTY"=dword:00000001
"ShowPuTTYSessions"=dword:00000001
"DefaultDatabase"=".\\PortableApps\\PuTTYPortable\\Data\\puttycm.dat"
"PuTTYCaptureTiming"=dword:00000000
"PuTTY"=".\\PortableApps\\PuTTYPortable\\App\\putty\\PUTTY.EXE"

[HKEY_CURRENT_USER\Software\ACS\PuTTY Connection Manager\HotKeys]
"PuTTYDuplicateSession"="85;131072"
"PuTTYRenameTab"="82;131072"
"PuTTYSwitchTabDesc"="9;131072"
"PuTTYSwitchTabAsc"="9;196608"
"PuTTYSwitch"="0;327680"
"PuTTYCMSaveDatabase"="83;131072"
"PuTTYCMFocusQuickConnectionToolbar"="113;0"
"PuTTYCMFocusConnectionManager"="114;0"
"Fullscreen"="122;0"
"ConnectionManagerCopy"="67;131072"
"ConnectionManagerCut"="88;131072"
"ConnectionManagerPaste"="86;131072"
"ConnectionManagerDelete"="46;0"

Salvatelo e unitelo a vostro registro di windows con un doppio click sul file.

Putty Connection Manager NON è ancora completamente Portable tanto che Full mobile version è tra le feature da implementare per la versione 0.8.0 e quindi questa configurazione qualche problemi potrebbe ancora darlo, ma con un po' di pazienza sono riuscito a farla funzionare ... se c'è qualche osservazione per migliorare questo hack ... ben venga!

Byez

Lincoln: Che cos'è Dio?
McCord: Sai quando vuoi tantissimo una cosa e allora chiudi gli occhi ed esprimi quel desiderio? Dio è quello che ti ignora.

martedì, aprile 22, 2008

Eliminare più spam con simscan e qmailtoaster

- post<li> - Permalink

Di qmailtoaster ne ho già parlato in diverse occasioni. Insieme di strumenti ben coordinato per la gestione di un mailserver efficente e solido basato su qmail.

Tra questi componenti c'è simscan.
Simscan is a simple program that enables the qmail smtpd service to reject viruses, spam, and block attachments during the SMTP conversation so the processing load on the email system is kept to a minimum. The project is open source and uses other open source components. Small, very efficient and written in C.
Simscan assieme a chkuser è uno delle chiavi di volta che permette un guadagno di prestazioni incredibile rispetto a soluzioni tipo qmailrocks (uno di questo giorni mi deciderò e pubblicherò un confronto un po' più analitico).

Simscan già in fase di dialogo SMTP, dopo i controlli effettuati da chkuser, effettua la scansione Antivirus e Antispam rifiutando le connessioni che risultano trasportare e-mail indesiderate.

Ora Spamassassin (SA) marca come spam le e-mail secondo il parametro

required_score 4

dentro al file /etc/mail/spamassassin/local.cf .

Anche simscan ha un proprio parametro

:clam=yes,spam=yes,spam_hits=8,attach=.mp3:.src:.bat:.pif

che va configurato dentro al file /var/qmail/control/simcontrol.
Bene questo parametro serve come limite per 'rigettare' le e-mail che superano tale valore.
Dopo ogni modifica al file bisogna ricordarsi di lanciare i comandi
#/var/qmail/bin/simscanmk
#/var/qmail/bin/simscanmk -g
e dalle prove che ho fatto non è nemmeno necessario riavviare qmail.
Per verifica si possono notare nei log del demone SMTP delle linee tipo:
simscan:[26411]:SPAM REJECT (10.80/8.00):12.1948s:_SPAM_ RedBull per la vostra cosa graziosa. :190.40.113.184:bolzbold@freenet.de:email@dominio.it:
[00]04-21 15:36:49 qmail-smtpd: qq hard reject (Your email is considered spam (10.80 spam-hits)): MAILFROM: RCPTTO:email@dominio.it:

dove si può notare il valore assegnato da SA - 10.80 confrontato col limite di simscan - 8.00

In pratica tutte le e-mail che superano il valore required_score di SA transitano però con il Subject modificato, quelle che superano anche spam_hits di simscan non passano proprio.

Io NON consiglio di tenere entrambi i parametri allo stesso valore perchè tutte le e-mail marcate come spam non transiterebbero più e voi non riuscireste più a vedere i falsi positivi (e-mail lecite marcate erroneamente come spam) ma di tenere un delta (differenza tra i due) pari a circa il valore di required_score.

In pratica vale la formula spam_hits = 2 * required_score.

Per fare un esempio concreto io ho un required_score pari a 4 e ho abbassato il valore di spam_hits da 12 (default in qmailtoaster) a 8 .

Ovviamente sono sono valori indicativi che andranno di volta in volta modulati rispetto al carico del Vs. mailserver.

Ulteriori informazioni su Simscan le potete trovare sulla relativa pagina di QmailWiki e sulla pagina dedicata a Simscan nel Wiki di QmailToaster.

Byez

Nulla è più pratico di una buona teoria.

lunedì, aprile 21, 2008

vmware device eth0 does not seem to be present, delaying initialization

- post<li> - Permalink

Stamattina ho migrato una virtual machine Centos Vmware tra due server e invece e alla domanda se volevo creare un nuovo id per la macchina o conservare quello vecchio ho malauguratamente scelto 'Create'.

Questo ha cambiato il MAC address delle schede di rete virtuali create.

Per questo la rete non si avviava più dandomi questo errore "device eth0 does not seem to be present, delaying initialization".

Ormai però sapevo cosa fare e così ho controllato dentro al file /etc/sysconfig/network-scripts/ifcfg-eth0

# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.10.0.255
IPADDR=192.10.0.200
HWADDR=00:0c:29:cc:27:f8
NETMASK=255.255.255.0
NETWORK=192.10.0.0
ONBOOT=yes
e l'ho fatto collimare con il file .vmx di configurazione della Virtual Machine

uuid.location = "56 4d 07 90 96 65 2e d9-68 f1 ed 58 f4 cc 27 f8"
uuid.bios = "56 4d 07 90 96 65 2e d9-68 f1 ed 58 f4 cc 27 f8"
ide1:0.autodetect = "TRUE"
ethernet0.generatedAddress = "00:0c:29:cc:27:f8"
ethernet0.generatedAddressOffset = "0"
ethernet0.connectionType = "bridged"

e tutto è ritornato a funzionare.

L'altra volta mi era capitato con Ubuntu che sollevava l'errore SIOCSIFADDR: No such device eth0 vmware tools ubuntu.

A volte ritornano. :D

Bisogna aver pazienza finché le cose cambino.

giovedì, aprile 17, 2008

Sono un po' impegnato

- post<li> - Permalink

Nonostante la già bassa proliferazione di post in questo periodo, prevedo che nei prossimi mesi si abbasserà ancora perchè in questo periodo ho ricominciato il corso di Architettura degli Elaboratori 1.

Se qualcuno vuole venirmi a trovare le lezioni si tengono al CUR (sede) il giovedì e venerdì pomeriggio.

Se invece volete capire di cosa parla il corso il programma delle lezioni si può trovare qui.

Byez

P.S. Ovviamente è una specie di augurio alla contraria :D


lunedì, aprile 07, 2008

Aggiornare Freenas firmware 0.686.3

- post<li> - Permalink

Niente di particolare, oggi ho aggiornato le mie versioni di Freenas 0.686.2 alla versione 0.686.3 così come avevo già descritto in Aggiornare il firmware di Freenas ed è andato tutto bene.

E' filato tutto liscio nonostante oggi sia lunedì :-D

Le novità dell'ultima versione si possono trovare nel relativo annuncio: FreeNAS 0.686.3.




Amicizia: il tacito accordo fra due nemici di voler collaborare per un bottino comune.

mercoledì, aprile 02, 2008

Default Apache ServerName *

- post<li> - Permalink

Problema semplice semplice o meglio sarà semplice per tutti ma non per me che me dimentico ogni volta e quindi me lo appunto qui per futura memoria.

Problema
Quando si imposta un server web ex-novo con Apache una buona configurazione è quello di impostarlo in modo Name-Based (per capire la differenza da IP-Based si può consultare Virtual Hosts) facendo si che risponda a qualsiasi (o semplicemente NON ancora configurato) NomeDominio che gli venga richiesto con una pagina furba di UnderConstruction e risponda pubblicando i contenuti corretti quando invece gli viene richiesto un ServerName già configurato ... peccato che nonostante quello che dica la documentazione spesso non accade così ma risponda sempre e comunque per gli host non ancora configurati un host diverso da UnderConstruction.

In altre parole dovrebbe essere:
ServerName * -> UnderConstruction
ServerName www.aaa.it -> /var/www/sites/aaa.it
ServerName www.bbb.com -> /var/www/sites/bbb.com
.......

peccato non sia - vediamo perchè

Soluzione:
Contestualizziamo un attimo ora mi riferirò alla configurazione di Apache in Reh Hat Enterprise Edition e derivate quindi anche CentOS, fedora e così via...

Il file di configurazione principale di httpd si trova nella directory

/etc/httpd/conf/httpd.conf

e io in linea di principio cerco di toccarlo il meno possibile in modo da non avere problemi in caso di upgrade o spostamento dei domini tra un server e l'altro. Per poter fare tutte le configurazioni del caso approfitto della direttiva di Default relativa a

#
# Load config files from the config directory "/etc/httpd/conf.d".
#
Include conf.d/*.conf


Scommento la riga

#
# Use name-based virtual hosting.
#
NameVirtualHost *:80


in modo da concentrare le mie configurazioni nella directory /etc/httpd/conf.d

[user@serverweb conf.d]# ll
totale 112
-rw-r--r-- 1 root root 320 2 apr 14:35 aaa.it.conf
-rw-r--r-- 1 root root 320 2 apr 14:35 bbb.com.conf

-rw-r--r-- 1 root root 295 16 gen 02:36 manual.conf
-rw-r--r-- 1 root root 1796 22 apr 2005 perl.conf
-rw-r--r-- 1 root root 560 20 set 2007 php.conf
-rw-r--r-- 1 root root 566 16 gen 02:36 proxy_ajp.conf
-rw-r--r-- 1 root root 1671 6 gen 2007 python.conf
-rw-r--r-- 1 root root 392 16 gen 02:36 README
-rw-r--r-- 1 root root 332 19 dic 01:44 squid.conf
-rw-r--r-- 1 root root 9677 16 gen 02:36 ssl.conf
-rw-r--r-- 1 root root 187 1 apr 18:28 underconstruction.conf
-rw-r--r-- 1 root root 352 9 gen 2007 webalizer.conf


All'interno di aaa.it.conf troveremo

<VirtualHost *:80>
ServerAdmin webmaster@aaa.it
DocumentRoot /var/www/sites/aaa.it
ServerName www.aaa.it
ErrorLog logs/aaa.it-error_log
CustomLog logs/aaa.it-access_log combined
</VirtualHost>


mentre all'interno di underconstruction.conf avremo invece

<VirtualHost *:80>
DocumentRoot /var/www/sites/underconstruction
ServerName *
ErrorLog logs/underconstruction-error_log
CustomLog logs/underconstruction-access_log combined
</VirtualHost>


con queste direttive dovrebbe rispondere per ogni dominio non configurato (*) con /var/www/sites/underconstruction mentre quando il browser richiede http://www.aaa.it pubblicare /var/www/sites/aaa.it .

Peccato non sia così ... per tutti i siti non configurati risponde sempre pubblicando i contenuti di /var/www/sites/aaa.it !!!! Provare per credere !!!!


L'illuminazione

Provate a rinominare underconstruction.conf in _underconstruction.conf ...

Semplice no o voi lo avevate già capito che dipendeva da ... ?

Byez

Il progresso non è altro che brancolare da un errore all'altro.