新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 网络学院 > 操作系统 > Linux教程 > 正文:快速安全的建立Linux操作系统的用户账户

快速安全的建立Linux操作系统的用户账户

新客网 XKER.COM 2007-08-08 来源: freedom 收藏本文

【原创翻译,版权所有,合作网站如欲转载,请注明原创翻译作者,及文章出处(赛迪网)。谢绝非合作网站转载,违者,赛迪网将保留追究其法律责任的权利!】

如果你需要建立一个用户账户,使其可对系统外壳进行访问,那么对登录工具的唯一逻辑选择就是OpenSSH。你所需要的只是用户的公钥(public key),用户只需要你的IP地址或者是主机名(用户需要靠此登录)。通常情况下,这就足够了。

有时,用户可能需要知道其口令是什么。如果用户需要使用Sudo程序,就需要通过口令进行身份验证。理想情况下,这种信息是通过电话或者加密的电子邮件提供的,不过这个口令自身有时会通过明文或者纯文本的电子邮件提供。

理想的情况是创建用户账户,获得用户的SSH公钥,并为用户创建一个随机口令,用户登录之后立即修改这个口令。这些都很容易完成。

对于用户,这是相当简单的。要创建一对公/私钥,只需执行:

$ ssh-keygen -t dsa

你还应该让用户发送~/.ssh/id_dsa.pub文件。在服务器端,事情也并不太困难。首先,你要创建用户账户:

# useradd -c "Joe User" -s /bin/bash -m joe

# openssl rand -base64 6 | tee -a ~joe/.password | passwd -stdin joe

这就创建了一个用户joe,并且为它分配了一个随机口令,并将同样的口令存储在~joe/.password中,在这里joe可以看到其口令。

如果你通过/etc/ssh/sshd_config锁定了账户,一定要记住增加下面的命令,来允许joe访问系统:

AllowUsers joe

此外,还要将PasswordAuthentication设为no,强制所有的登录都要使用公钥。

最后,一定要将id_dsa.pub密钥复制到用户的主目录中,并且分配适当的所有权和权限:

# mkdir ~joe/.ssh

# chmod 700 ~joe/.ssh

# cp id_dsa.pub ~joe/.ssh/authorized_keys

# chmod 600 ~joe/.ssh/authorized_keys

# chown -R joe:joe ~joe/.ssh

好了,全部搞定。现在用户可以使用其SSH私钥来登录,而且能够访问Sudo或者需要一个实际的口令来进行身份验证。

参考文章《Set up user accounts quickly and securely》

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐