Non c'è nulla che ti impedisca di testare all'interno della tua rete. Per avere una comprensione rudimentale di ciò che è coinvolto nei test, ti suggerisco di familiarizzare con il Penetration Testing Execution Standard, OSSTMM e altri framework di pentesting simili. Una volta che inizi a stabilire chi, cosa, quando, dove e perché, ti sarà più facile creare il tuo ambiente. Per i test non ho mai impostato nulla nella mia rete (non è possibile provare a imitare un client) perché non posso mai sapere quali livelli di patch hanno, quale software è installato e così via. Piuttosto che reinventare le ruote, ci sono molte istanze virtualizzate "hackerabili" che potresti scaricare. Suggerisco NetInVM. Ma per rispondere alla tua domanda, ciò che fai nella tua rete privata non è vincolato da nessuna delle comuni leggi relative ai computer dell'USC (legge statunitense).
Cosa può fare per te un file dot di shell