Archivi categoria: Tecnologia

Verifica Freeradius

stavo installando un nuovo server FreeRadius e dovevo verificare il corretto funzionamento.

In teoria andrebbe bene anche il semplice

radtest userid password 127.0.0.1 10 testing123

Ma la configurazione del server impone anche l’uso di attributi per l’autenticazione, nel mio caso il Calling-Station-Id

Ho perso diverso tempo, poi ho trovato la soluzione:

echo "User-Name=userid,User-Password=password,Calling-Station-Id=statioid,Framed-Protocol=PPP " | radclient localhost:1812 auth testing123

Modifica data di scadenza per un utente OracleDB

Di recente mi sono trovato davanti al problema di aumentare la durata della validità della password di un utente di OracleDB.

La soluzione è quella di creare un nuovo profilo al quale associare un periodo per la scadenza della password;

CREATE PROFILE LONG_LIFE_PROFILE LIMIT
PASSWORD_LIFE_TIME 3600
PASSWORD_GRACE_TIME 3550;

SELECT username, expiry_date FROM DBA_USERS ;

SYS 10-OTT-20 15:40:56

ALTER USER SYS PROFILE LONG_LIFE_PROFILE;

SELECT username, expiry_date FROM DBA_USERS ;

SYS 28-APR-30 15:40:56

Da Via e Civico a coordinate GPS

Per un mio interesse volevo riportare su mappa una serie di luoghi, ma avevo solo l’indirizzo a mia disposizione.

Mi sono trovato, quindi, nella necessità di trasformare questi indirizzi in punti GPS: LocationIQ mi ò venuto in aiuto.

www.locationiq.com è un sito tramite il quale, una volta registrati ed ottenuta la key da sviluppatore, si possono convertire indirizzi (via e civico) in coordinate gps e fino a 10000 indizzzi nelle 24 ore, il servizio è gratuito !!

#!/bin/bash

echo -e "lat	lon	title	description	icon	iconSize	iconOffset">lista.txt
rm update_poi.sql
while IFS=\; read poi indirizzo 
do

indirizzo1="$indirizzo1,rome,lazio,italy"
echo $indirizzo
wget -O ppp.xml  "https://eu1.locationiq.com/v1/search.php?key=ppqqtt&q=${indirizzo1}&format=xml"

actualsize=$(wc -c <"ppp.xml")
if [ $actualsize -ge 1 ]; then
  XML_FILE=ppp.xml
  LAT=$(xmllint --xpath 'string(/searchresults/place/@lat)' $XML_FILE)
  LON=$(xmllint --xpath 'string(/searchresults/place/@lon)' $XML_FILE)
  echo $poi","$LAT,$LON 
  echo -e "$LAT\t$LON\t$poi\t$indirizzo\n$LAT\n$LON\tOl_icon_blue_example.png	24,24	0,-24" >> lista.txt
  echo "update fact_data_provisioning_gps set lat='${LAT}', lon='${LON}' where cod_poi='${poi}';">>update_poi.sql
fi
sleep 1
rm ppp.xml

done<esportazione.dsv

il piccolo programmino in bash che a fronte dell’indirizzo via/civico del mio poi, ottiene le coordinate gps e crea il file che mi permetterè l’aggiornamento della mia tabella Oracle.

A questo punto dopo aver cercato in rete qualcosa che mi potesse aiutare a mappare i punti gps ottenuti sulla cartina.

Anche in questo caso una breve ricerca e sono arrivato alla pagina

https://wiki.openstreetmap.org/wiki/Openlayers_POI_layer_example

che mi ha consentito di rappresentare i miei punti GPS in un attimo !

Mail senza mail

Ho avuto l’esigenza di testare la funzionalità di un mailrelay, ma senza che la macchina client disponesse del pacchetto mail:

per ovviare al problema i comadi da lanciare sono pochi e semplici:

$ telnet mailrelay smtp
Connected to mailrelay.
Escape character is ‘^]’.
220 mailrelay ESMTP Exim 4.90_1
HELO mailrelay
250 mailrelay Hello mailrelay [mailrelay]
mail from: user@domain.com
250 OK
rcpt to: user2@otherdomain.com
250 Accepted
data
354 Enter message, ending with “.” on a line by itself
This is test email only

Thanks
.

250 OK id=1j6umb-0005ko-VZ
quit
221 mailrelay closing connection
Connection closed by foreign host.
$

Fatto !

Verifica di un host “up and running” ma senza ping

Avevo la necessità di verificare che un server fosse up and running, ma senza poter usare il ping in quanto disabilitato.
Girovagando mi sono imbattuto in un pezzo di codice perl che ho provveduto ad inserire all’interno di uno script bash:


[...]
FOO=`/usr/bin/perl -x $0`
echo <<'__END__' > /dev/null
#!/usr/bin/perl -wl
use IO::Socket::INET;
$| = 1;
my $socket = new IO::Socket::INET(
PeerHost => 'aaa.bbb.ccc.ddd',
PeerPort => '22',
Proto => 'tcp',
Timeout => 2,
);
die "cannot connect to the server $!\n" unless $socket;
print "connected to the server\n";
__END__

#/usr/sbin/ping $HOST
if [ "${FOO}" != "" ]
then
[....]

se il server mi risponde sulla porta 22 in quanto devo usare l’sftp, ma è possibile impostare la porta su di un diverso servizio esposto.
Molto versatile ed utile in quanto ha il timeout personalizzabile.

NCID e OpenWRT

Ho deciso di eliminare tutti i servizi poco pesanti dal server per spostarli sulla mia spettacolare Vodafone Station con OpenWRT.

Ho trovato un sito dove era già fatto il lavoro al 80%:

https://lists.openwrt.org/pipermail/openwrt-devel/2012-September/016640.html

In effetti trovare un buon esempio per la compilazione di programmi non previsti dal trunk, non è semplice.
La versione utilizzata è la 0.84, ma l’ultima versione disponibile è la 1.0: non usate la versine 1.0 in quanto non funziona. Con qualche aggiustamento e riflessioni post installazione il soft funziona alla perfezione.

Il problema l’ho avuto quando ho collegato il modem al router… Mi aspettavo qualche cosa, ma quello che mi diceva il log era veramente troppo poco ..

Mar 99 99:99:99 192.168.Y.X kernel: [177297.336000] usb 3-2: new full-speed USB device number 3 using uhci_hcd

Installato il pacchetto kmod-usb-serial ed anche il pacchetto usbutil (il comando lsusb serve …) inserito nel file modules.d/usb-serial la riga

usbserial vendor=0x0572 product=0x1329

dove i valori sono gli stessi che ha fornito il comando lsusb ed identificano il modem

root@ARV7510PW22:~# opkg install usbutils
Installing usbutils (007-1) to root...
Downloading http://192.168.1.20/barrier_breaker/14.07/lantiq/packages/base/usbutils_007-1_lantiq.ipk.
Installing libusb-1.0 (1.0.9-1) to root...
Downloading http://192.168.1.20/barrier_breaker/14.07/lantiq/packages/base/libusb-1.0_1.0.9-1_lantiq.ipk.
Configuring libusb-1.0.
Configuring usbutils.
root@ARV7510PW22:~# lsusb 
Bus 003 Device 002: ID 0572:1329 Conexant Systems (Rockwell), Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

a questo punto dopo un reboot appare per magia il /dev/ttyUSB0.

Ho installato il pacchetto ncid alla versione 0.84, ma mentre il server ncidd funziona alla perfezione, il paccheto ncid presenta alcune difficoltà.

Per iniziare devo installare il pacchetto tcl in quanto ncid ha bisogno di tale comando. all’interno di ncid ho modificato il comando tclsh da utilizzare impostando tclsh8.5… Ma le difficoltà non sono finite !!
Fissata l’anomalia con tclsh, ne incontro una più grande: un errore legato all’istruzione clock del tcl.
Ho eliminato il problema alla radice, in quanto ho preso il precedente ncid (quello della versione 0.84) ed eseguita la stessa modifica il programma funziona… (ncid non fa altro che il polling del log di ncidd e verificare l’arrivo di una nuova chiamata).

alla fine ho inserito nell’interno del rc.local la riga

ncid --no-gui --program ncid-page &

L’ultima modifica è all’interno del file ncid per l’invio della mail da parte dello stesso ncid:
all’interno di ncid.con ho indicato sendmail come mail program ed ho eliminato la verifica dell’utente …

#if [ -n "$rootID" ]
#then 
#    # send mail as user $PageFrom  
#   echo $use_e $MailMsg |
#       su -s /bin/sh -c "$PageMail $PageOpt $PageTo" $PageFrom 
#else  
#   # send mail as user running script
#   #echo $use_e $MailMsg | $PageMail $PageOpt $PageTo
#    echo -e "Subject:Telefonata da ${NMBR}\nReply-to:emailaddress@gmail.com\n\n${MailMsg}"| $PageMail $PageTo
    echo -e "Subject:Telefonata da ${NMBR}\n\n${MailMsg}"| $PageMail $PageTo

ed il gioco è fatto !!

Ancora OpenWRT, ma 14.07 !!

Bhe.. allora mi piace veramente mettermi in situazioni difficili..

Avevo appena messo a punto il vecchio modem Astoria, che sempre su eBay ho trovato una spettacolare Vodafone Station.. e non ho resistito.

Dopo qualche peripezia per colpa delle poste, alla fine il modem è arrivato a casa… Tempo di prendere e misure e le due viti sul fondo sono andate via.. sono riuscito ad aprirlo senza distruggerlo e mi sono collegato alla presa seriale presente al suo interno per la parte propedeutica all’installazione di openWRT: modificare il bootloader.

Come al solito ho seguito le preziosissime istruzioni presenti sul sito

http://foro.seguridadwireless.net/openwrt/(desarrollo)-openwrt-en-astoria-arv7510pw22/

Modificato il bootloader in u-boot dopo aver diviso il bootloader stesso in due sezioni per poterlo installare all’interno delle primo due aree di memoria:

UPLOAD Flash
---------------------------------------
Area Address Length
---------------------------------------
[0] Boot 0xB0000000 128K
[1] Configuration 0xB0020000 384K
[2] None 0xB0080000 128K
[3] Special Area 0xB00A0000 128K
[4] Primary Setting 0xB00C0000 128K
[5] Code Image 0 0xB00E0000 7680K
[6] Code Image 1 0xB0860000 7680K
[7] Boot Params 0xB0FE0000 128K
[8] Flash Image 0xB0000000 16384K
---------------------------------------
Enter area to UPLOAD: 0
Upload area 0. Are you sure? (Y/n) Yes

Starting XModem download...(press Enter to abort)

Starting to write flash ...write length 0x00020000
Start checking: flash area 0 length 131072 ...Done.

Poi senza resettare il modem, la seconda parte:

[DANUBE Boot]:u

UPLOAD Flash
---------------------------------------
Area Address Length
---------------------------------------
[0] Boot 0xB0000000 128K
[1] Configuration 0xB0020000 384K
[2] None 0xB0080000 128K
[3] Special Area 0xB00A0000 128K
[4] Primary Setting 0xB00C0000 128K
[5] Code Image 0 0xB00E0000 7680K
[6] Code Image 1 0xB0860000 7680K
[7] Boot Params 0xB0FE0000 128K
[8] Flash Image 0xB0000000 16384K
---------------------------------------
Enter area to UPLOAD: 1
Upload area 1. Are you sure? (Y/n) Yes
Starting XModem download...(press Enter to abort)

Starting to write flash ...write length 0x0000D680
Start checking: flash area 1 length 54912 ...Done.

A questo punto si può resettare il modem:

ROM VER: 1.0.3
CFG 01
Read EEPROMX
X

U-Boot 2013.10-openwrt4 (Jun 19 2014 - 19:45:31) ARV7510PW22

Board: Arcadyan ARV7510PW22
SoC: Lantiq Danube-S v1.5
CPU: 333.333 MHz
IO: 166.667 MHz
BUS: 83.333 MHz
BOOT: NOR
DRAM: 64 MiB
Flash: 16 MiB
*** Warning - bad CRC, using default environment

Alla fine va in errore, in quanto non esiste il “sistema operativo”. Ora lo installiamo !
Configuriamo i parametri per il trasferimento del file

ARV7510PW22 # setenv ipaddr 192.168.0.50
ARV7510PW22 # setenv serverip 192.168.0.100
ARV7510PW22 # setenv ethaddr 74:31:70:xx:xx:xx
ARV7510PW22 # saveenv
Saving Environment to Flash...
. done
Un-Protected 1 sectors
Erasing Flash...
. done
Erased 1 sectors
Writing to Flash... 10....9....8....7....6....5....4....3....2....1....10....9....8....7....6....5....4....3....2....1....done
. done
Protected 1 sectors
ARV7510PW22 # reset

L’indirizzo mac del modem l’ho preso sull’etichetta sul retro del modem.

U-Boot 2013.10-openwrt4 (Jun 19 2014 - 19:45:31) ARV7510PW22

Board: Arcadyan ARV7510PW22
SoC: Lantiq Danube-S v1.5
CPU: 333.333 MHz
IO: 166.667 MHz
BUS: 83.333 MHz
BOOT: NOR
DRAM: 64 MiB
Flash: 16 MiB
In: serial
Out: serial
Err: serial
Net: ltq-eth
Hit any key to stop autoboot: 2 0
ARV7510PW22 # tftp openwrt.bin
Using ltq-eth device
TFTP from server 192.168.0.100; our IP address is 192.168.0.50
Filename 'openwrt.bin'.
Load address: 0x81000000

Loading: *#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
############
1.2 MiB/s
done
Bytes transferred = 4718596 (480004 hex)
ARV7510PW22 # protect off all
Un-Protect Flash Bank # 1
................................................................................................................................ done
ARV7510PW22 # era $kernel_addr +$filesize

..................................... done
Erased 37 sectors
ARV7510PW22 # cp.b $loadaddr $kernel_addr $filesize
Copy to Flash... 10....9....8....7....6....5....4....3....2....1....done
ARV7510PW22 # reset
ROM VER: 1.0.3
CFG 01
Read EEPROMX
X

U-Boot 2013.10-openwrt4 (Jun 19 2014 - 19:45:31) ARV7510PW22

Board: Arcadyan ARV7510PW22
SoC: Lantiq Danube-S v1.5
CPU: 333.333 MHz
IO: 166.667 MHz
BUS: 83.333 MHz
BOOT: NOR
DRAM: 64 MiB
Flash: 16 MiB
In: serial
Out: serial
Err: serial
Net: ltq-eth
Hit any key to stop autoboot: 2 1 0
## Booting kernel from Legacy Image at b0060000 ...
Image Name: MIPS OpenWrt Linux-3.10.49
Created: 2014-10-02 7:14:34 UTC
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 1446470 Bytes = 1.4 MiB
Load Address: 80002000
Entry Point: 80002000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK

Starting kernel ...

[ 0.000000] Linux version 3.10.49 (bb@builder1) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r42625) ) #5 Wed Oct 1 15:41:21 CEST

Fatto !!

Ma …. il software presente sul sito, ha un problema di (forse) gioventù, i quanto in maniera assolutamente casuale (non ho cercato la root cause del problema) il sistema andava in segmentation fault durante il caricamento di alcuni programmi… Per esempio con la parte audio della suite alsa, andava sempre in errore, provocando la morte del router.

A quel punto ho preso tutto l’utimo trunk di openWRT tramite

svn co svn://svn.openwrt.org/openwrt/branches/barrier_breaker/

installato e configurato tutto il software di contorno tramite i comandi

./scripts/feeds update -a
./scripts/feeds install -a

ed ho fatto ricompilare tutto, in maniera che, come già detto, all’interno del file di installazione fosse presente tutto il necessario.

Dopo due giorni di compilazione, aver rimosso alcuni pacchetti e dopo aver modificato una patch
/home/angelo/Software/openwrt/barrier_breaker/target/linux/lantiq/patches-3.10/0153-lantiq-VPE-softdog.patch

--- /dev/null
+++ b/arch/mips/include/asm/mach-lantiq/vpe.h
@@ -0,0 +1,44 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * Copyright (C) 2005 infineon
+ * Copyright (C) 2007 John Crispin <blogic@openwrt.org>
+ *
+ */
+#ifndef _IFXMIPS_VPE_H__
+#define _IFXMIPS_VPE_H__
+
+/* For the explanation of the APIs please refer the section "MT APRP Kernel
+ * Programming" in AR9 SW Architecture Specification
+ */
+int32_t vpe1_sw_start(void* sw_start_addr, uint32_t tcmask, uint32_t flags);
+int32_t vpe1_sw_stop(uint32_t flags);
+uint32_t vpe1_get_load_addr (uint32_t flags);
+uint32_t vpe1_get_max_mem (uint32_t flags);
+
+int32_t vpe1_set_boot_param(char *field, char *value, char flags);
+int32_t vpe1_get_boot_param(char *field, char **value, char flags);
+
+/* Watchdog APIs */
+extern unsigned long vpe1_wdog_ctr;
+extern unsigned long vpe1_wdog_timeout;
+
+unsigned long vpe1_sw_wdog_start(unsigned long);
+unsigned long vpe1_sw_wdog_stop(unsigned long);
+
+typedef int (*VPE_SW_WDOG_RESET)(unsigned long wdog_cleared_ok_count);
+int32_t vpe1_sw_wdog_register_reset_handler(VPE_SW_WDOG_RESET reset_fn);
+
+#endif
--- /dev/null
+++ b/arch/mips/lantiq/softdog_vpe.c
@@ -0,0 +1,109 @@
+/*
+** =============================================================================
+** FILE NAME : softdog_vpe.c
+** MODULES : LXDB
+** DATE : 24-03-2008
+** AUTHOR : LXDB Team
+** DESCRIPTION : This header file contains the code for the watchdog
+** implentation on vpe1 side.
+** REFERENCES :
+** COPYRIGHT : Copyright (c) 2008
+** Am Campeon 1-12, 85579 Neubiberg, Germany
+** Any use of this software is subject to the conclusion of a respective
+** License agreement. Without such a License agreement no rights to the
+** software are granted
+**
+** HISTORY :
+** $Date $Author $Comment
+** 24-03-2008 LXDB Initial version
+** ============================================================================
+*/
+
+#include <linux/module.h> +#include <linux/moduleparam.h> +#include <linux/types.h> +#include <linux/timer.h> +#include <linux/reboot.h> +#include <linux/init.h> +#include <linux/jiffies.h> +
+#include
+
+static unsigned long last_wdog_value;
+static unsigned long vpe1_wdog_cleared;
+
+static unsigned long vpe1_wdog_dead;
+static void watchdog_vpe0_fire(unsigned long); /* Called when vpe0 timer expires */
+static void keep_alive_vpe0(unsigned long);
+VPE_SW_WDOG_RESET reset_local_fn;
+
+
+static struct timer_list watchdog_vpe0_ticktock =
+ TIMER_INITIALIZER(watchdog_vpe0_fire, 0, 0);
+
+static void watchdog_vpe0_fire (unsigned long flags)
+{
+ volatile unsigned long *wdog_ctr_value;
+ wdog_ctr_value = (void*)vpe1_wdog_ctr;
+ if (*wdog_ctr_value == last_wdog_value) { /* VPE1 watchdog expiry handling */
+ vpe1_sw_wdog_stop(flags);
+ vpe1_wdog_dead++;
+ printk(KERN_DEBUG "VPE1 watchdog reset handler called\n");
+ /* Call the reset handler function */
+ reset_local_fn(flags);
+ } else { /* Everything is OK on vpe1 side. Continue. */
+ last_wdog_value = *wdog_ctr_value;
+ vpe1_wdog_cleared++;
+ keep_alive_vpe0(flags);
+ }
+}
+
+int32_t vpe1_sw_wdog_register_reset_handler (VPE_SW_WDOG_RESET reset_fn)
+{
+ reset_local_fn = (VPE_SW_WDOG_RESET)reset_fn;
+ return 0;
+}
+
+static void keep_alive_vpe0(unsigned long flags)
+{
+ mod_timer(&watchdog_vpe0_ticktock, jiffies+ vpe1_wdog_timeout );
+}
+
+unsigned long vpe1_sw_wdog_start(unsigned long flags)
+{
+ volatile unsigned long *wdog_ctr_value;
+ wdog_ctr_value = (void*)vpe1_wdog_ctr;
+ *wdog_ctr_value = 0;
+ last_wdog_value = 0;
+ keep_alive_vpe0(flags);
+ return 0;
+}
+
+unsigned long vpe1_sw_wdog_stop(unsigned long flags)
+{
+ del_timer(&watchdog_vpe0_ticktock);
+ return 0;
+}
+
+static int __init watchdog_vpe1_init(void)
+{
+ /* Nothing to be done here */
+ return 0;
+}
+
+static void __exit watchdog_vpe1_exit(void)
+{
+ unsigned long flags=0;
+ vpe1_sw_wdog_stop(flags);
+}
+
+module_init(watchdog_vpe1_init);
+module_exit(watchdog_vpe1_exit);
+
+EXPORT_SYMBOL(vpe1_sw_wdog_register_reset_handler);
+EXPORT_SYMBOL(vpe1_sw_wdog_start);
+EXPORT_SYMBOL(vpe1_sw_wdog_stop);
+
+MODULE_AUTHOR("LXDB");
+MODULE_DESCRIPTION("Software Watchdog For VPE1");
+MODULE_LICENSE("GPL");

tutto è andato a posto.

SMTPs e Tiscali

Da diverso tempo Tiscali ha modificato le politiche di accesso ai suoi server SMTP ed obbliga a passare per la porta 465 invece delle classica 25.

Alcuni script in automatico sulla mia macchina non riuscivano a mandare la mail per avvisarmi di modifiche, reboot od altro.

Ho impostato postfix per poter utilizzare la nuova porta in questo modo:

aggiungo al /etc/postfix/main.cf le seguenti righe:

relayhost = [localhost]:11125
# SASL SUPPORT FOR SERVERS
#
# The following options set parameters needed by Postfix to enable
# Cyrus-SASL support for authentication of mail servers.
#
smtp_sender_dependent_authentication = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtpd_sasl_security_options =

il file /etc/postfix/sasl_passwd

deve contenere le seguenti informazioni

[server]:porta    userid@domain:password

esempio

[localhost]:11125   userid@domain:password

Compilo il file per farlo digerire con postmap /etc/postfix/sasl_passwd

Siccome la versione di postfix non consente l’uso della porta 465 utilizzata da Tiscali per i suoi servizi, ho installato stunnel4 per fare un tunnel verso i server di Tiscali

ho creato il file  /etc/stunnel/stunnel_tiscali.confcon il seguente contenuto

client = yes
foreground = no

[smtp-tls-wrapper]
accept = 11125
client = yes
connect = smtp.tiscali.it:smtps

ed ho abiitato il servizio modificando il file  /etc/default/stunnel4 in questo modo:

# /etc/default/stunnel
# Julien LEMOINE <speedblue@debian.org>
# September 2003

# Change to one to enable stunnel automatic startup
ENABLED=1
FILES=”/etc/stunnel/*.conf”
OPTIONS=””

# Change to one to enable ppp restart scripts
PPP_RESTART=0

a questo punto uno start o restart dei servizi

service stunnel4 start

service postfix restart

Ma qui sono iniziati i problemi !!

il primo è che postfix non riusciva a risolvere il “localhost” con l’ip V4.. ma solo con :::1 della V6.. Ho modificato allora la riga del file /etc/postfix/main.cf

relayhost = [localhost]:11125

modificando localhost in 127.0.0.1 ed ho eliminato il problema.

Dai test successivi, ho visto nel syslog che era presente l’errore

warning: numeric domain name in resource data of MX record for smtp.tiscali.it: 127.0.0.1

e qui non sono riuscito a capire il problema: Facendo risolvere smtp.ticali.it a dig e nslookup ottengo dei risultati differenti.. o per meglio dire

dig smtp.tiscali.it mx +short
0 127.0.0.1.

con nslookup

nslookup smtp.tiscali.it
Server: 192.168.1.20
Address: 192.168.1.20#53

Non-authoritative answer:
Name: smtp.tiscali.it
Address: 213.205.33.13

Sembra che postfix faccia una richiesta andando a cercare il campo mx all’interno del record del dns, quando invece

dig smtp.tiscali.it +short
213.205.33.13

il cname viene risolto. Per ovviare al problema, invece di usare il cname ho impostato l’ip fisico, e cioé all’interno di /etc/stunnel/stunnel_tiscali.confcon:

connect = smtp.tiscali.it:smtps

diventa

connect = 213.205.33.13:smtps

Altra prova ed altro errore …

sender rejected - il mittente non coincide con la username configurata per l'autenticazione. Vedi http://assistenza.tiscali.it/tecnica/posta/mancato_invio.php (in reply to MAIL FROM command))

Creo allora il file /etc/postfix/sender_canonical il cui contenuto permette di inviare la posta dall’utente “user” tramite l’inidizzo di posta “email-address” (es. root invia la posta tramite user@domail.com)

user email-address

configuro postfix per utilizzare questo nuovo file

postconf -e "sender_canonical_maps=hash:/etc/postfix/sender_canonical"

lo compilo con

sudo postmap hash:/etc/postfix/sender_canonical

e tutto ha funzionato alla perfezione !!

posso mandare le mail dal mio sistema senza problemi !!

echo "This is the body of a test message" | mutt -s "Test message" user@domain.com

Decoro Urbano - We DU!

Samsung Note e la rom S5

Era già diverso tempo che mio figlio mi chiedeva di rimettere a posto il mio vecchio Note, ora suo, considerando che la memoria disponibile era sempre minore …
Avevo cancellato quasi tutto sui 2GB a disposizione del sistema, 1.5GB erano utilizzati dal sistema (!!).
Dopo aver rimosso tutto ed essendo ancora presente l’iconcina del sistema al limite dello spazio vitale, ho deciso di cambiare la rom… se non altro per togliere tutta la roba inutile che viene installata e cancellare a fondo le varie cache.
Volevo fare tutto sotto linux (una Mint ver. 17) e mi attrezzo di tutto il necessario…
Recovery CWM 4.0.3.1
S5.zip
JOdin3

La cosa, in teoria, è relativamente semplice …
Pongo il terminale in “download mode”
flash la recovery nuova
copio nella SD il nuovo firmware
installo il nuovo firmware
faccio un paio di “wipe”
reboot
… e fatto !!

Ma non è andata proprio così !! 🙁

dopo aver scaricato ed installato JOdin3 seleziono la voce PAC come file da installare e indico il file di recovery da utilizzare … Qui iniziano le difficoltà : mi chiede un file pit (mi chiedo a cosa possa servire il file pit se non devo ripartizionare la memoria). JOdin3 fa tutto da solo e se lo ricava; non funziona l’automatismo per cui lo dovrebbe importare in JOdin3, ma fa lo stesso..
Imposto il pit file (nel log si vede dove viene creato) ed il file tar.md5 ed provo ad eseguire l’aggiornamento della recovery.

Adesso faccio il boot in recovery (vol up+home+power): appare subito il triangolo giallo che mi informa che ho hackerato il telefono: ma è quello che volevo! Esportata la memoria interna, tramite la funzione mount, copio il file zip: faccio un wipe generale del telefono, cancello da Dalvik Cache e poi provo ad installare il pacchetto (Install ZIP)
… ma ottengo un errore e la soluzione è quella di installare una nuova recovery.
E qui comincia l’inferno!!

Ho provato per due giorni ad installare la versione aggiornata di CWM (philz_touch_6.07.9-n7000.tar.md5), ma senza alcun successo.. sia sotto Linux che Windows.. Jodin3 o Odin3 1.85 andava in errore.. non riusciva a comunicare correttamente con il telefono tramite la seriale.
Ho fatto tutte le ipotesi, ho verificato che non ci fosse un problema all’emmc che è sul Note un argomento molto delicato.. ma alla fine è stato molto più semplice:

il telefono è stato riavviato in modalità download, collegato il cavo usb

tar xvf philz_touch_6.07.9-n7000.tar.md5
sudo heimdall flash --KERNEL recovery.img

e sono riuscito ad installare il recovery che mi serviva !!

a questo punto è stato tutto in discesa …

Installazione del file zip nella modalità di recovery del Note, recupero dei dati di Google e vai !!!

PS Ora l’occupazione di memoria è circa 400MB di apps & dati, 44MB (!!) di sistema e 1400MB disponibili !!!!

Addio Zentyal

logo-zential-big-bgDopo aver passato alcune settimane con un server che mi sembrava potesse fare al mio caso, ho deciso che, invece, non era adatto ai miei scopi.

In realtà non posso che essere soddisfatto di Zentyal (www.zentyal.org) , con le sua finestre, semplificazioni, ma il voler far gestire agli script tutto è vincente in alcune situazioni e la mia piccola rete non era adatta alle sue caratteristiche. Al contrario lo ritengo un sw che possa essere usato con successo all’interno di organizzazione windowscentriche.

In sostanza ho reintallato una versione di Ubunt server invece della precedente Debian, solo in quanto posso giocare meglio con i pacchetti (sono più aggiornati e non corro il rischio di dover compilare mezzo sistema solo per istallare, per esempio, l’ultimo gparted.

Ho trovato un sostituto in ajenti, che per certi aspetti ricorda molto Zentyal, ma senza la pretesa di “nascondere” la configurazione.. anzi !! Insomma … morale della favola, ho eliminato i dati dal vecchio disco ed ho installato Ubuntu server. Ho installato il server dhcp, squid, dansguardian, mysql, clamav, apache2 ed altre robette; l’ho fatto diventare un rsysolg server, installato postfix e nei prossimi giorni voglio configurarlo per ricevere la mail direttamente da internet utilizzando i soliti ddns ed hardenizzarlo un poco per eliminare eventuali buchi di sicurezza.

A proposito di sicurezza… Ringrazio … non so chi, ma sono felice di essere passato a Linux: sono diversi anni che non mi pongo il problema di virus, adaware ed altre menate del genere!! Mia sorella ha dovuto piallare completamente il pc dopo che alcuni ospiti si erano installati sul suo windows7 rendendolo inutilizzabile. Solo un bel formatone dell’hard disk gli ha riconsegnato un computer degno di chiamarsi tale.

faccio una lista dei diversi link che ho ritenuto utili per quanto fatto, senza fare scopiazzamenti che tanto poi si vedono 🙂

per la configurazione dei log centralizzati http://www.howtoforge.com/centralized-rsyslog-server-monitoring

anche se loganalyzer non mi piace assolutamente, ma ho fatto diverse ricerche e non sono stato in grado di trovare qualcosa che faccia un lavoro simile al suo, ma è di una lentezza e pesantezza micidiale !!!

per la configurazione dei programmi di mail http://help.ubuntu-it.org/6.06/ubuntu/serverguide/it/email-services.html

per la gestione del content filtering/cache http l’accoppiata squid e dansguardian è insuperabile; per la gestione dei contenuti mi sono affidato alle liste fornite da http://www.shallalist.de/ in quanto prevedono che un utente privato le possa usare senza alcuna limitazione … avendo dei marmocchi che viaggiano per la rete, lasciamoli stare ancora bambini.. per quanto è possibile !

Si termina il tutto con samba e cups per la stampante di rete e la condivisione con windows di alcune directory del server. Quando riuscirò ad avere qualche secondo di tempo, voglio vedere la configurazione dello scanner con xsane in rete..

Ho installato la mia Epson R200 via CUPS senza alcun problema.. nessun driver da ricercare.. nulla ! Ho acceso la stampante, due click a tutta la mia rete casalinga riaveva la stampante attiva!!