我有一台 Ubuntu 14.04 服务器,Apache 以用户 www-data 身份运行。我希望能够以 www-data 身份通过 ssh 登录服务器。
如何在不破坏 Apache 服务的情况下为 www-data 定义密码?
如何将 www-data 添加到允许的 ssh 用户列表中?
编辑
我从标记为重复的问题中了解到,通过 ssh 提供 www-data 访问权限并不是最安全的解决方案,但我需要至少暂时出于其他原因这样做。
我需要以 www-data 身份登录服务器的原因如下:我希望我的网络服务器无需提供密码即可通过 ssh 连接到远程主机。为了能够进行设置,我需要以 www-data 身份登录,生成 ssh 密钥并将其发送到该远程主机。
答案1
有三件事要做才能允许像 www-data 这样的“服务用户”通过 ssh 登录。
为 www-data 设置密码
sudo passwd www-data
为 www-data 定义一个 shell。您可以使用
chsh
或 通过编辑 来执行此操作/etc/passwd
。在用户行上用 替换/usr/sbin/nologin
或类似内容。/bin/bash
授予通过 ssh 登录的权限,编辑
/etc/ssh/sshd_config
并添加以下行(不要忘记枚举所有需要 ssh 访问的用户)AllowUsers www-data