Salve! Posso darti maggiori informazioni
o rispondere a qualche domanda?
Come possiamo esserti utili?
Seleziona uno dei nostri esperti
Alberto Bedin
Supporto Commerciale
Sono online
Luisa Soranno
Supporto Commerciale
Sono online

Con sempre più persone che lavorano da remoto, diventa fondamentale il controllo degli accessi al tuo IBM i da parte degli utenti che accedono dai terminali 5250.

Un numero crescente di IBM i sta aprendo i propri sistemi all'accesso remoto e una sessione di terminale 5250 espone il tuo sistema a dei rischi.

Un buon modo per controllare l'accesso al terminale è autorizzare l'indirizzo IP remoto prima di consentire la connessione a una sessione.

In questo modo, puoi controllare quale specifico indirizzo IP o range di indirizzi può connettersi. Questo tipo di controllo può essere stabilito sul sistema utilizzando un punto di uscita per il punto di inizializzazione del dispositivo Telnet. L'implementazione di questo controllo consentirà di creare un proprio programma di uscita per convalidare l'indirizzo IP in entrata prima di consentire al server Telnet di stabilire la connessione.

Ma c'è un piccolo problema con questo approccio. Il problema è che nel punto in cui l'uscita IBM Telnet richiama il programma l'unico profilo utente disponibile è QSYS. Tutte le connessioni Telnet vengono eseguite con il profilo utente QSYS. Di conseguenza i controlli del punto di uscita verranno applicati a tutti gli utenti, non per singolo utente.

Per implementare i controlli di accesso IP in base al profilo utente un metodo molto efficace può essere creare un programma iniziale per ogni profilo utente che si desidera controllare.

Questo viene registrato nel parametro INLPGM per ogni profilo utente. Nel programma iniziale è quindi possibile accedere all'indirizzo IP di origine da cui l'utente si connette e quindi eseguire la propria convalida tenendo conto del profilo utente di accesso effettivo.

Nel programma iniziale è possibile accedere all'accesso al profilo utente mediante un semplice comando RTVJOBA CL. Trovare l'indirizzo IP utilizzato è un po' più complicato, ma non così difficile.

Per farlo sarà infatti necessario codificare una chiamata all'interfaccia del programma applicativo (API) QUSRJOBI di IBM. In particolare, sarà necessario utilizzare il formato di chiamata JOBI0600. Così si potranno recuperare una serie di informazioni sul lavoro per la sessione del terminale che include l'indirizzo IP dell'utente che si sta connettendo. Sarà nella posizione 308 della variabile del ricevitore specificata per l'API. Se hai già familiarità con l'utilizzo delle API IBM, questo procedimento è abbastanza semplice. 

Una volta ottenuta la combinazione di profilo utente e indirizzo IP basta convalidare la combinazione rispetto ad un database di controllo che è possibile impostare a tale scopo.

Potresti controllare una serie di numeri IP a scopo di convalida. Ad esempio, potresti voler specificare che tutti gli indirizzi IP da 10.1.1.2 a 10.1.1.10 sono legittimi. A seconda della gamma di numeri, questo può però essere un problema. Se esegui un confronto diretto dell'intervallo nell'esempio precedente, l'intervallo non verrà convalidato. Quando lo abbiamo impostato qui, abbiamo convertito l'indirizzo IP in un numero standardizzato di 12 cifre. Ad esempio, 10.1.1.10 finisce per essere memorizzato in 01001 001 010 (senza spazi). Questo ti dà una buona base per fare un controllo.

Dopo aver creato e completamente testato il programma iniziale, è possibile implementarlo registrando il nome del programma e la libreria in INLPGM per ogni profilo utente in cui si desidera aggiungere questo controllo. Poiché il programma iniziale verrà sempre eseguito quando l'utente accede al sistema, si consiglia di testare a fondo la soluzione prima di bloccare i profili utente. 

Se tutto questo ti sembra un po' complesso bigblue Security400 ha recentemente implementato una funzione di  l'autenticazione a due fattori ai controlli della sessione del tuo terminale 5250 come ulteriore livello di protezione.