Anonymous asks:
How can I prevent logins? I need a way to disable logins from the root user account without being at the server console itself.
Many modern Unix/Linux systems respect the /etc/nologin file. Simply login as root and do "touch /etc/nologin". This restricts logins to root only. When you want to allow users again, "rm /etc/nologin".
Many systems also allow you to add text to /etc/nologin. When users attempt to login, they see that text.
$ ssh tonyl@aplawrence.com Logins currently not allowed. Check back in an hour or so, thanks.
Older systems like SCO Unix don't have that. For these systems, you need to add code to /etc/profile. For example, you could add this:
IAM=`who am i | cut -d" " -f1` [ -f /etc/nologin ] && [ $IAM ] && [ $IAM != "root" ] && exit 0
The danger here is that you mistype that code - you could easily lock yourself out forever. I recommend not exiting the editor until you have tested thoroughly.
But what about users already logged in? That code doesn't affect them at all.
That can be trickier. You can write scripts to loop through logged in users and kill them off. A more drastic but easy solution is to "touch /etc/login" and then do a shutdown and reboot.
Got something to add? Send me email.
More Articles by Anthony Lawrence © 2015-10-08 Anthony Lawrence
The only problem with the cloud is that at some point it will rain. (Reinhard Posch)
Printer Friendly Version
How can I prevent logins? Copyright © October 2015 Tony Lawrence
Have you tried Searching this site?
This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.
Contact us
Printer Friendly Version