Abbiamo schede NFC per tenere traccia della presenza, gli studenti scansionano la loro carta ad un terminale all'inizio di ogni lezione, vogliamo estendere l'uso delle carte per filtrare chi può accedere al Raspberry Pi all'interno dell'edificio senza aggiungere molto di una seccatura.
Questi Pi sono thin-client, quindi sarà necessario eseguire l'autenticazione su una VM.
Ora, per la base di sbloccare il pi stesso, farò affidamento su xlock.
Lanciamo il programma all'avvio di Pi, quindi verrà avviato xlock. Il programma inizierà a controllare se viene letto un tag NFC e, in caso affermativo, qual è l'ID del tag? Quindi, ora abbiamo l'ID del tag, controlliamo nel database se il proprietario del tag ha il permesso di usare il Pi. Supponiamo che abbia il permesso, kill xlock , vai al database e controlla la password che appartiene alla VM degli utenti, e collegalo tramite rdesktop.
La minaccia specifica che voglio indirizzare: Come posso impedire a qualcuno di usare qualcun altro VM (hackerando il database e recuperando password in chiaro, per esempio).
Opzioni che ho pensato di: Se un utente vuole accedere, scrivi qualcosa sul suo tag.
Penso di aver trovato una soluzione: L'account utente di autenticazione gestisce l'autenticazione, quindi apre rdesktop sull'account" studente ", lo studente non sarà in grado di leggere il codice e capire come entrare nel database. E come bonus sulla sicurezza, permetti solo agli studenti di usare la porta 80 e la porta TCP 3389 e la porta UDP 3389.