Tips and tricks - random password

Pubblicato il 06/10/2016 in Tips and Tricks • 2 min read

Riprendo a scrivere sul blog dopo un bel po' di tempo, inaugurando una nuova categoria, che è quella dedicata ai suggerimenti ed ai trucchetti che possono essere utili a noi sysadmin.

Iniziamo da un modo semplice per generare password casuali.

A cosa serve?

Un generatore di password casuali può esserci utile quando dobbiamo creare un nuovo account, che sia una casella di posta quanto un'utenza sul server di condivisione file interno alla rete locale.

Utilizzando una password complessa generata in maniera casuale, forniamo all'utente un esempio di come dovrebbe essere una password sufficientemente robusta e, inoltre, possiamo essere maggiormente tranquilli in caso di attacchi brute-force nel lasso di tempo che essa venga cambiata.

Come

Quello di cui abbiamo bisogno è una shell unix - nel caso specifico bash - e il seguente script:

  #!/bin/bash
  # This script generates a complex random password
  set -e

  # Variables
  # Set default length for password to 16 chars if no arguments are given
  LEN=${1:-16}
  TROPT=a-zA-Z0-9

  randpass()
  {
      cat /dev/urandom | tr -dc "$TROPT" | fold -w $LEN | head -n 1
  }

  randpass

Salviamo lo script in un file chiamato - per esempio - randpass.sh e gli diamo il bit di eseguibilità con il comando:

  chmod +x randpass.sh

Lo script accetta un parametro da linea di comando che indica la lunghezza della password da generare. Se non passiamo alcuna lunghezza, la password generata sarà di 16 caratteri.

  root@server:~/tool/randpass# ./randpass.sh
  uaHz06dSicMs0WFl

  root@server:~/tool/randpass# ./randpass.sh 10
  2deJFpLF7A

  root@server:~/tool/randpass# ./randpass.sh 20
  MCvGIsOKp824NG42LARy

Perché

Ora potreste pensare "sì, ok, è tutto molto bello e mi serve anche, ma online ne trovo a bizzeffe".

Beh, è vero che online ce ne sono vari di siti che generano password, ma innanzitutto questo è offline (e può capitare di trovarsi in una situazione simile) e poi magari il nostro sito preferito per le password random potrebbe non essere raggiungibile...