Hello, World!
  • Home
  • Categories
  • Tags
  • Archives

Linux 帳號管理 - 停用帳號

Way 1 - passwd

停用 username

>>>(root) passwd -l username

啟用 username

>>>(root) passwd -u username

Way 2 - chsh

改變 username 的 logging shell 為

  • /bin/false
  • /usr/sbin/nologin.

首先 檢查 /etc/shell 檔 是否有列到 /bin/false 或 /usr/sbin/nologin (or /sbin/nologin for Fedora)

如果都沒有 手動自己添加

$ echo "/bin/false" >> /etc/shells
$ echo "/usr/sbin/nologin" >> /etc/shells
$ echo "/sbin/nologin" >> /etc/shells # For Fedora

將 帳號的 loggin shell 改成 /usr/sbin/nologin 該員還是可以連到 ftp

將 帳號的 loggin shell 改成 /bin/false 該員將無法登入系統 或連到 ftp

$ sudo chsh -s /bin/false username
$ sudo chsh -s /usr/sbin/nologin username
$ sudo chsh -s /sbin/nologin username # For Fedora

如果想要重新啟用 被禁用的帳號 將 logging shell 改成 /bin/bash, /bin/sh, /bin/zsh 等

新增帳號時 設定失效時間

# 一個月後 停用帳號
$ useradd -e `date -d "30 days" +"%Y-%m-%d"` -d /home/ming -s /bin/bash -m ming

# 從今天起 增加一個月的使用時間
$ chage -E `date -d "30 days" +"%Y-%m-%d"` ming

# 查詢 帳號狀態
$ chage --list ming

Reference

How to lock and unlock a user account in Linux

Linux and Unix no login shells: /bin/false vs /sbin/nologin

How can I create automatically expiring user accounts?

7 Examples to Manage Linux Password Expiration and Aging Using chage


Published

Apr 14, 2015

Last Updated

Jul 6, 2015

Category

Linux

Contact

  • Powered by Pelican. Theme: Elegant by Talha Mansoor