当我尝试重启ssh
我的 ubuntu 机器上的服务器时,出现了
me@me-one:~$ service ssh restart
restart: Rejected send message, 1 matched rules; type="method_call", sender=":1.63" (uid=1000 pid=3354 comm="restart ssh ") interface="com.ubuntu.Upstart0_6.Job" member="Restart" error name="(unset)" requested_reply="0" destination="com.ubuntu.Upstart" (uid=0 pid=1 comm="/sbin/init")
我意识到我还sudo
没有
me@me-one:~$ sudo service ssh restart
ssh start/running, process 3386
为什么第一次尝试没有抛出类似Permission denied
这样的错误。我在运行时是否覆盖了错误root
并隐式忽略了警告/错误?或者只是糟糕的编程由openssh
开发商?
答案1
一个人认为的“糟糕的编程”可能对另一个人来说是“它按预期运行”。
确实,您需要 root 权限才能重新启动、启动、停止等,而您之所以收到此消息,是因为您没有这些权限。但我同意,如果您在没有 root 权限的情况下尝试执行这些操作时收到的消息更有帮助,那就太好了。
您可能需要检查启动板中是否存在与此相关的错误(可能在暴发户),如果没有,请报告。不过,我敢肯定,你不会是第一个注意到它的人,因为它太常见了。无论如何,漏洞研究都是有益的。
答案2
据我所知,要启动或停止服务,您必须具有超级用户权限。您必须在命令前添加 sudo。
开始,
sudo service ssh start
停止,
sudo service ssh stop
重启
sudo service ssh restart
要检查状态,
sudo service ssh status
笔记:
- sudo 允许有权限的用户以超级用户身份执行命令。