Archivi

Firefox: Disabilitare Navigation Bar

4 marzo 2015 di In: Sistemistico

per poter disabilitare la barra degli indirizzi da firefox è necessario:

  • raggiungere la cartella %APPDATA%\Mozilla\Firefox\Profiles\
  • Entrare nel profilo (che di solito è uno)
  • Creare una cartella chiamata Chrome ed entrarci
  • creare un file chiamato userChrome.css con all’interno la riga #nav-bar { display:none !important;}

Perl su Windows: automatizzare il completamento di un form

10 ottobre 2014 di In: Networking, Script

Questo script Perl prende IP internet e hostname della macchina su cui viene eseguito e li manda ad un form presente in internet.
Il completamento del form è possibile grazie al modulo WWW::Mechanize;

#!/usr/bin/perl -w
use strict;
use warnings;
use LWP::Simple;
use Sys::Hostname;
use WWW::Mechanize;
 
# Estraggo l'indirizzo IP connettendomi ad un sito
my $ip = get('https://www.net-addiction.net/ip/ip.php');
$ip = 'Non ho trovato un indirizzo IP!' if !$ip;
 
# Estraggo l'hostname
my $host = hostname;
 
# Imposto i campi da compilare con i relativi valori (il nome del campo dev'essere uguale all'attributo name del tag input 
my $mech = WWW::Mechanize->new();
my $url = "https://www.net-addiction.net/ip/form.php"; # Definizione dell'URL contenente il form
$mech->get($url);
my $result = $mech->submit_form(
form_number => 1,                  # L'identificativo del form (nel caso in cui nella pagina ce ne fosse piu' di uno
fields      => 
{
Code		=> 'RLRRLRLL', # Codice di controllo - è la variabile che distingue le richieste autorizzate
IP    		=> $ip,        # L'indirizzo IP estratto
Hostname            => $host,      # L'hostname estratto
}
, button            => 'Invia'     # Questo deve corrispondere all'attributo name del tag input type="submit"
);
print $result->content();         # Esegue il completamento
 
 
 
system("cls"); # Svuota la finestra del prompt
print "Il tuo indirizzo IP e\' ".$ip."\nIl tuo hostname e\' " . $host ."\n"; # Scrive a video IP e Hostname

Dall’altra parte (seguendo l’esempio sopra in https://www.net-addiction.net/ip/form.php) ci deve essere un form tipo:

<html>
<head><title>Pagina per ricezione dati</title></head>
<body>
<?php
if ($_POST['Code'] == 'RLRRLRLL') { // Se il codice corrisponde
 
$ip = $_POST['IP']; // assegno le variabili
$hostname = $_POST['Hostname'];
 
$myfile = fopen("dati.txt", "a") or die("Impossibile aprire il file!"); // Tento di aprire il file in append
$txt = $ip . " - " . $hostname . "\n"; // Creo la stringa da scrivere su file
fwrite($myfile, $txt); // Scrivo su file
fclose($myfile); // chiudo il file
 
echo "<h1>dati inviati</h1>"; // Confermo che i dati sono stati inviati
	}
?>
 
<form id="1" action="form.php" method="POST">
<input type="text" id="Code" name="Code" />
<input type="text" id="IP" name="IP" />
<input type="text" id="Hostname" name="Hostname" />
<input type="submit" id="Invia" name="Invia" value="Invia" />
</form>
</body>
</html>

Lo so, l’ho fatto in PHP per comodità. Quando imparerò un minimo di programmazione web di Perl integrerò.

Perl su Windows: Ottenere l’indirizzo IP internet e l’hostname

10 ottobre 2014 di In: Networking, Script

Questo è frutto di una mia curiosità. Ho utilizzato Strawberry Perl su Windows.
Il codice è tutto commentato.

#!/usr/bin/perl -w
use strict;
use warnings;
use LWP::Simple;
use Time::localtime;
use Sys::Hostname;
 
# Percorso del file di output
my $output = 'output.txt';
 
# Estraggo l'indirizzo IP connettendomi ad un sito
my $ip = get('https://www.net-addiction.net/ip/ip.php');
$ip = 'Non ho trovato un indirizzo IP!' if !$ip;
 
# Estraggo la data per il timestamp
my $mese = localtime->mon + 1;
my $giorno = localtime->mday;
my $anno = localtime->year + 1900;
my $ora = localtime->hour;
my $minuti = localtime->min;
my $timestamp = $anno.$mese.$giorno." @ ".$ora.":".$minuti; 
 
# Estraggo l'hostname
my $host = hostname;
 
# Crea il file definito in precedenza se non esiste e scrive IP e timestamp (in append - senza sovrascrivere il file)
unless (-e $output) { open(FILE, '>', $output); close FILE; } 
open(FILE, '>>', $output) || die("Impossibile creare il file!"); 
print FILE $ip . ' - ' . $timestamp . "\n";
close FILE;
 
# Scrive a video IP e Hostname
system("cls");
print "Il tuo indirizzo IP e\' ".$ip."\nIl tuo hostname e\' " . $host ."\n";
 
#Evito che la finestra si chiuda ma non mostro l'output di pause
system ("pause>nul");

l’output a video è:

Il tuo indirizzo IP e' 166.95.244.117
Il tuo hostname e' Hostname-PC

Mentre il file output.txt contiene:

166.95.244.117 - 20141010 @ 1:26
166.95.244.117 - 20141010 @ 1:26
166.95.244.117 - 20141010 @ 1:27
166.95.244.117 - 20141010 @ 1:27

Prossimamente cercherò un modo per inviare questi dati ad un sito web che controlli l’idoneità della richiesta e salvi solo i dati dei computer abilitati.

Batch: cancellare un file in tutte le sottodirectory.

19 settembre 2011 di In: Sistemistico

Ho scoperto oggi che è possibile con un solo comando cancellare tutte le occorrenze di un file in una cartella e in tutte le sue sottocartelle con un semplice comando.

1
del /S [percorso] [nomefile]

The Dude – Network Monitor free

18 ottobre 2008 di In: Networking

Al lavoro mi è stato consigliata questa applicazione client/server che, pur essendo gratis, è piena di features interessanti. Permette di “scoprire” automaticamente gli apparati nella vostra rete locale e i servizi che forniscono, permette di stabilire ogni quanto verificare se il servizio funziona, e dopo quanti esiti negativi lanciare l’allarme. L’allarme può essere un beep sul server, un comando lanciato sul client, un comando lanciato sul server, una mail o, se avete un SMS gateway un SMS appunto. Supporta la multiutenza e si possono anche personalizzare dei probe su servizi particolari (ad esempio un webserver sulla porta 8888).

L’ho provato e sono rimasto molto colpito. Sconsiglio a tutti la funzione discovery perchè produrrà sicuramente uno schema poco chiaro. Creare invece un device alla volta vi da modo anche di farvi un’idea di come dovrà essere il vostro schema.

The Dude è scaricabile qui.

Client Telnet su Vista

26 settembre 2008 di In: Networking, Sistemistico

Oggi mi sono accorto che su Vista (su un computer che non era il mio, tengo a precisare) il telnet in una configurazione di default non funziona. O meglio.. non riconosce il comando. Vabbe che telnet è vecchio e insicuro ma è ancora molto utile, ad esempio per vedere se un servizio è in ascolto su una determinata porta.

Cercando su internet ho trovato come riabilitarlo. Basta andare su:
Pannello di controllo > Programmi e funzionalità > Attivazione e disattivazione delle funzionalità Windows > e spuntare “Client Telnet”. Successivamente vi verrà chiesto di riavviare il pc.

Comando Sleep in Windows

19 settembre 2008 di In: Sistemistico

Ho scoperto da poco che in Windows non esiste un comando che abbia la stessa funzione di sleep in Unix.
Il comando Sleep in Windows esiste. Basta scaricare il Windows 2003 Resource kit questo indirizzo:
http://www.microsoft.com/windowsserver2003/downloads/tools/default.mspx.
Dopo aver installato il kit e aver messo la directory di installazione tra i path potrete utilizzare

C:\>sleep 5 (per attendere 5 secondi)

oppure

C:\>sleep -m 6543 (per attendere 6543 millisecondi)

Se non volete scaricare il malloppone esiste un workaround utilizzando il ping.

Quindi:

ping 127.0.0.1 -n [Numero di ping] -w [Time-out tra i ping in millisecondi] > nul

quindi se tra un comando e l’altro del vostro batch volete aspettare 10 secondi basta lanciare:

ping 127.0.0.1 -n 10 -w 1000 > nul

Windows – Impostare l’indirizzo IP via command line

7 settembre 2008 di In: Networking

Quante volte vi è capitato di dover perdere tempo a cambiare configurazione di rete perchè le reti a cui vi connettete durante la settimana sono tutte diverse? Quello che propongo in questo post è un esempio per creare tanti file batch che una volta lanciati cambiano la configurazione senza andare su “Connessioni di Rete -> Connessione alla rete locale (LAN)… etc”.

IP Statico

I comandi per impostare un indirizzo IP statico sono:

Postazione_1.bat

netsh interface ip set address “Connessione alla rete locale (LAN)” static [Indirizzo IP] [Netmask] [Gateway] 1

netsh interface ip set dns name=”Connessione alla rete locale (LAN)” source=static addr=[1° server DNS]

netsh interface ip add dns name=”Connessione alla rete locale (LAN)” addr=[2° server DNS] index=2

Quindi, banalmente, la prima riga imposta IP, Netmask e Gateway; nella seconda impostate il primo server DNS e nella terza il secondo server DNS di vostra scelta.

Nel caso in cui nella vostra configurazione necessitiate di un indirizzo IP secondario il comando da aggiungere al file batch è:

netsh interface ip add address “Connessione alla rete locale (LAN)” [Indirizzo IP] [Netmask]

In questo comando basta specificare indirizzo IP e Netmask.

IP Dinamico (DHCP)

Ammesso che nella vostra rete ci sia un DHCP server, ecco comandi per farsi assegnare un indirizzo IP dinamico:

dhcp.bat

netsh interface ip set address name=”Connessione alla rete locale (LAN)” source=dhcp

netsh interface ip set dns name=”Connessione alla rete locale (LAN)” source=dhcp

Molto più facile e veloce 😀

Metodo Alternativo

Esiste un metodo alternativo fornito sempre dal comando Netsh. Il comando

netsh -c interface dump > Postazione_1.txt

permette di fare una copia della configurazione di tutte le schede di rete in quel momento e riversarlo in un file txt. Lo stesso file txt può essere re-importato grazie al comando

netsh -f Postazione_1.txt