介绍
在FreeBSD上,像其他类似Unix的操作系统一样,可以创建用户帐户以提供对系统的交互式访问。 用户帐户在正确管理时,可以通过提供一种方法来限制个人用户只访问完成其任务所需的文件和目录,从而添加一层系统安全性。
在本教程中,我们将向您展示如何在FreeBSD服务器上执行以下用户管理任务:
- 添加用户
- 授予超级用户权限
- 删除用户
- 锁定用户帐户
- 解锁用户帐户
先决条件
要学习本教程,您必须在FreeBSD服务器root访问权限。 也就是说,你必须能够登录到服务器根目录或通过具有超级用户权限的另一个用户sudo
命令。 如果您在使用根计划,你可以省略sudo
例子命令的一部分。
如何添加用户?
以添加新的用户的最简单的方法是使用所提供adduser
效用,这是基于pw
命令。 该adduser
命令由作出必要的补充,增加了用户对系统的passwd
, master.passwd
和group
文件,并创建新用户的主目录。 它可以交互式地运行,提示收集关于新用户的信息,或非交互式地,这更适合于添加批量的用户。 我们将讨论在交互模式下使用它。
要增加与用户adduser
在交互模式下 ,它允许您一次创建一个用户,只需运行不带这样参数的命令:
sudo adduser
此时,您必须通过响应一系列提示来提供有关新用户的信息。 让我们来看看现在的提示示例,示例响应以红色显示:
Username: sammy
Full name: Sammy Shark
Uid (Leave empty for default):
Login group [sammy]:
Login group is sammy. Invite sammy into other groups? []: wheel
Login class [default]:
Shell (sh csh tcsh nologin) [sh]:
Home directory [/home/sammy]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password: password
Enter password again: password
Lock out the account after creation? [no]:
许多提示可以留空,选择默认响应,方括号, [yes]
例如,表示默认值,但也有,我们将在这里解释了几个重要的提示:
- 用户名 :这一个是不言自明。 提供新用户的所需名称
- 登录组为<user>。 邀请<用户名>到其他组:此字段将允许您将用户添加到其他组,通过在一个空间分隔的列表提供所需要的群体。 这方面最常见的用法是将其添加到授予超级用户(Sudo)权限给新用户
wheel
组在FreeBSD的成员wheel
拥有超级用户权限组执行命令。 如果要创建正常(非特权)用户,可以将此空白
到目前为止的所有其他提示都是不言自明的,除了密码提示之外,还可以保留为默认值。 当然,如果您需要更改任何其他详细信息(例如用户的Uid或Home目录),请随时提供非默认响应。 如果你正在寻找任何提示的深入介绍,运行man adduser
了解更多信息。
在回答提示后,将显示新用户的摘要:
Username : sammy
Password : *****
Full Name : Sammy Shark
Uid : 1002
Class :
Groups : sammy wheel
Home : /home/sammy
Home Mode :
Shell : /bin/sh
Locked : no
OK? (yes/no): yes
审查用户信息后,回应好不好?有提示yes
或no
。 您的响应确定是否创建用户。
如果回答yes
,用户将被创建,将提供一个确认:
adduser: INFO: Successfully added (sammy) to the user database.
无论是否创建用户,都将看到以下提示:
Add another user? (yes/no): no
Goodbye!
如果完成,具有反应no
。 否则,回应yes
重复这个过程,创建一个额外的新用户。
此时,可以使用您创建的用户。 您可能要设置SSH密钥认证以提高安全性- 看看本教程学习如何 。
如何授予Sudo权限
在FreeBSD上,像其他的类Unix操作系统,你可以给予用户通过运行具有超级用户权限命令的能力sudo
命令。 该sudo
命令允许用户运行一个命令,另一个用户。 我们将告诉你如何用授予超级用户权限的普通用户,有效地让他们执行命令为root
。
在FreeBSD,这是成员的用户wheel
组被允许使用sudo
。 这是由于在默认的sudoers文件以下行, /usr/local/etc/sudoers
:
%wheel ALL=(ALL) NOPASSWD: ALL
因此,授予具有超级用户权限的普通用户的一种方法是将用户添加到wheel
组。 将用户添加到wheel
组,使用此pw groupmod
命令(更换高亮名):
sudo pw groupmod wheel -m sammy
此命令将指定用户添加到wheel
组中的/etc/group
的文件,从而授予与运行命令以超级用户的能力给用户。
如何删除用户
一个简单的方法来从您的FreeBSD系统中删除用户是使用rmuser
命令。 您可以运行它没有参数,或传递您要删除的用户作为参数,并按照提示完成用户删除过程:
sudo rmuser
如果您不提供用户名作为参数,系统将提示您输入一个或多个。 然后,系统会要求您确认是否确定,以及是否应删除用户的主目录:
Please enter one or more usernames: sammy
Matching password entry:
sammy:*:1002:1002::0:0:Sammy Shark:/home/sammy:/bin/sh
Is this the entry you wish to remove? y
Remove user's home directory (/home/sammy)? y
Removing user (sammy): mailspool home passwd.
如何锁定用户帐户
如果要禁用用户对系统的访问权限,但不删除其帐户记录和主目录,则可以锁定帐户。 禁用用户最简单的方法就是使用pw lock
命令中,要禁用作为参数,像这样用户:
sudo pw lock username
这个命令的作品前面加上“*锁定*”到用户的条目中/etc/master.passwd
文件。
在帐户解锁之前,用户将无法登录。
如何解锁用户
如果要启用被禁用用户pw lock
,你可以使用pw unlock
命令这样做:
sudo pw unlock username
此命令的作用删去“*锁定*”,如果存在的话,从用户的条目中/etc/master.passwd
文件。
结论
您现在应该对FreeBSD服务器上的基本用户管理有了很好的了解。