![Ubuntu SSLH 服务未在启动时启动](https://linux22.com/image/517305/Ubuntu%20SSLH%20%E6%9C%8D%E5%8A%A1%E6%9C%AA%E5%9C%A8%E5%90%AF%E5%8A%A8%E6%97%B6%E5%90%AF%E5%8A%A8.png)
我正在尝试在 Ubuntu 服务器上的 443 端口上运行 SSH 和 HTTPS。我发现固态激光切割这似乎可以解决问题。我唯一的问题是让它在系统启动时启动。据说,它已经设置好了。“sudo update-rc.d sslh defaults”表示它已经设置好了。但是,重新启动导致它无法启动,直到我使用老套的“sudo /etc/init.d/sslh start”命令手动启动它。我尝试使用 update-rc.d 将其删除并再次添加。这也没有用。我在日志中找不到任何东西,但话虽如此,我不确定哪个日志文件会保存这种信息。任何帮助都将不胜感激。
答案1
您是否检查过 /etc/rc?.d/ 目录中的符号链接?可能是这个启动脚本的“默认值”被破坏了,请尝试:
updates-rc.d sslh start 23
..例如,告诉它在运行级别 2 和 3 中启动(我假设这是您启动的级别)。运行后,在 /etc/rc2.d/ 和 /etc/rc3.d/ 中查找实际的符号链接。(我是 Red Hat 的人,猜测 Ubuntu 也类似)如果您没有看到符号链接,那么您必须手动创建它们。如果您确实看到了符号链接,那么它在启动时就坏了,您需要打开 /etc/init.d/sslh 并从启动命令中添加一些日志重定向,以查看它们失败的原因。
答案2
事实证明,我使用的虚拟机仍然在 Karmic 上。我更新了软件包,我认为这些软件包可以解决与 init.d 相关的任何错误,因为它们都已列为已修复。我对 Lucid 进行了版本升级,问题就解决了。