Я тут немного подумал и придумал такой способ. Только прошу не кидаться гнилыми помидорами, так как я не специалист, а так любитель самоучка.
По идее тебе нужно отследить когда пользователь сделал logout и поменять пароль из заранее заданного списка.
Вот примерный способ:
1. Ты генерируешь список паролей и записываешь их в текстовый файл (доступный только root'у). Бумажную копию отдаешь пользователю.
2. При logout должен создаваться файл-флаг (например скриптом из ~/.bash_logout)
3. скрипт по cron`у отслеживает наличие файла-флага и запускает passwd для нужного пользователя с паролем из списка, и удаляет флаг.
Может кто поправит и укажет на более красивый путь.