Linux添加新用户及SSH远程登录教程

云计算

Linux添加新用户及SSH远程登录教程

2024-12-21 00:11


在 Linux 系统上添加新用户并允许其进行 SSH 远程登录是一个常见的操作,适用于为新用户提供访问服务器的权限。以下是详细的步骤说明,包括每个步骤的解释,确保操作的正确性和安全性。 步骤 1:以 root 用户身份登录到 Linux 服务器

                                            




在 Linux 系统上添加新用户并允许其进行 SSH 远程登录是一个常见的操作,适用于为新用户提供访问服务器的权限。以下是详细的步骤说明,包括每个步骤的解释,确保操作的正确性和安全性。

步骤 1:以 root 用户身份登录到 Linux 服务器

首先,确保你以 root 用户身份登录到 Linux 服务器,因为只有 root 用户才有权限执行用户管理相关的操作。如果你当前是普通用户,可以通过 sudo 提升权限来执行这些命令。

步骤 2:创建新用户

使用 useradd 命令创建新用户。useradd 命令会在系统中创建一个新用户,并为该用户分配一个主目录和默认设置。你可以根据需要指定不同的选项。

命令格式:

useradd newuser

解释:

  • useradd:命令用于创建新用户。
  • newuser:这是新用户的用户名,你可以根据需要替换为实际的用户名。

如果你想指定新用户的主目录,可以使用 -d 参数来指定路径:

useradd -d /home/newuser newuser

默认情况下,useradd 会为新用户创建一个以用户名命名的主目录,例如 /home/newuser,如果你没有使用 -d 参数。

步骤 3:设置新用户的密码

使用 passwd 命令为新用户设置密码。系统会提示你输入新密码并确认。请务必选择一个强密码,以确保服务器的安全性。

命令格式:

passwd newuser

解释:

  • passwd:命令用于设置或更改用户密码。
  • newuser:这是你要为其设置密码的用户名。

执行此命令后,系统将提示你输入新密码,输入时不会显示字符。为避免密码泄露,请选择一个包含字母、数字和特殊字符的强密码。

步骤 4:授予新用户 SSH 登录权限

为了让新用户能够通过 SSH 远程登录,你需要修改 SSH 配置文件 /etc/ssh/sshd_config。通过修改该文件,你可以指定哪些用户有权限登录到服务器。

操作步骤:

  1. 使用文本编辑器(如 vi 或 nano)打开 SSH 配置文件。

    vi /etc/ssh/sshd_config
    

    或者

    nano /etc/ssh/sshd_config
    
  2. 在文件中找到 #AllowUsers 行。如果没有找到此行,你可以直接添加它。将其前面的注释符号 # 去掉,并添加新用户的用户名。
    例如:

    AllowUsers newuser
    

    解释:

    • AllowUsers:此配置项指定允许通过 SSH 登录的用户。
    • newuser:这是你刚刚创建的用户名,允许该用户使用 SSH 登录。
  3. 保存并关闭文件。如果你使用 vi,按 Esc,然后输入 :wq 保存并退出;如果使用 nano,按 Ctrl + X,然后按 Y 保存更改。

步骤 5:重新加载 SSH 服务

修改完 SSH 配置文件后,必须重新加载 SSH 服务以使配置生效。可以通过 systemctl 命令重启 SSH 服务。

命令格式:

systemctl restart sshd

解释:

  • systemctl:用于管理系统服务的命令。
  • restart sshd:重启 SSH 服务,以便使刚刚修改的配置生效。

步骤 6:验证 SSH 登录

现在,你已经创建了新用户并允许其通过 SSH 登录。你可以通过以下方式进行验证:

  1. 使用 SSH 客户端(如 ssh 命令或其他远程工具)尝试使用新用户登录:
    ssh newuser@your_server_ip
    
  2. 输入新用户的密码,验证是否能够成功登录到服务器。

步骤 7:防火墙配置(如需要)

如果你的服务器启用了防火墙(如 iptables 或 firewalld),需要确保防火墙允许通过 22 端口进行 SSH 连接。

对于 firewalld,可以使用以下命令:

firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload

对于 iptables,可以使用以下命令:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

解释:

  • firewall-cmd:是 firewalld 的命令行工具,用于管理防火墙规则。
  • iptables:是 Linux 系统中的一种网络过滤工具,通过设置规则来控制进出网络的数据包。

确保防火墙配置允许 SSH 流量通过,避免防火墙阻止远程连接。

总结

通过上述步骤,你可以在 Linux 系统上成功创建新用户并允许其通过 SSH 进行远程登录。这些步骤包括:

  1. 创建新用户;
  2. 为新用户设置密码;
  3. 修改 SSH 配置文件以授予 SSH 访问权限;
  4. 重启 SSH 服务;
  5. 验证新用户的 SSH 登录。

此外,确保选择强密码并正确配置防火墙,以提高系统的安全性。通过这些操作,你可以安全有效地管理 Linux 系统的用户访问权限。


label :
  • Linux
  • SSH