类UNIX系统创建普通用户 + 配置 sudo + ssh 密钥登录全套
发表于 2026-10-9 | 电脑手机 | 白菜 | 阅读 56 次
  1. 创建普通用户(示例用户名 admin,自行替换)
    sh
    adduser
    交互式填写:
    Username: admin
    Full name:随便填(Admin User)
    UID:直接回车默认
    Login group:回车默认
    Invite user to other groups:wheel(必须!用来 sudo 提权)
    填入:wheel
    Login shell:推荐 sh 或者 bash(看你有没有装 bash)
    Home directory:默认 /home/admin
    Password:设置用户密码
    其他选项全部回车默认,最后确认 y
    查看用户是否在 wheel 组:
    sh
    id admin
    输出里面要有 wheel
  2. 开启 wheel 组 sudo 权限
    FreeBSD 默认自带 sudo,没有就先装:
    sh
    pkg install sudo
    编辑 sudo 配置文件
    sh
    visudo
    找到这一行,取消注释(删掉前面#)
    plaintext
    %wheel ALL=(ALL:ALL) ALL
    保存退出。
    现在 admin 可以用 sudo su - 切换 root,或者sudo 命令
  3. 配置 SSH 密钥登录(接上一节)
    切换到 admin 用户操作
    sh
    su - admin
    mkdir -p ~/.ssh

    粘贴你的公钥

    echo "ssh-rsa AAAAB3Nza......" >> ~/.ssh/authorized_keys

    修复权限属主

    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys

  4. 配置 sshd(/etc/ssh/sshd_config)
    ini
    PermitRootLogin no
    PubkeyAuthentication yes

    先保留PasswordAuthentication yes,测试密钥连通成功后再关闭

    PasswordAuthentication yes
    重启 sshd
    sh
    service sshd restart

  5. 测试
    Windows OpenSSH/Putty 使用 admin 账号 + 私钥登录
    登录成功后测试 sudo:
    sh
    sudo whoami
    返回 root 代表 sudo 正常。
  6. 确认全部没问题后,关闭 ssh 密码登录
    修改 sshd_config
    ini
    PasswordAuthentication no
    重启 sshd
    sh
    service sshd restart
    快速检查命令
    sh

    查看用户所属组

    id admin

    查看.ssh权限

    ls -ld ~/.ssh ~/.ssh/authorized_keys

    看ssh登录日志(排错用)

    tail -f /var/log/auth.log

TOP