我正在使用 Solaris 11.3 i86pc 机器。Solaris 附带了旧版本的 OpenSSH 和 SunSSH,它们只能使用 RSA。我正在尝试更新 OpenSSH。
我在 中构建并安装了一个现代版本/opt/ssh
。我现在正尝试告诉 Solaris 使用它。问题是,我还没有找到 Solaris 启动 OpenSSH 守护程序的位置。我期望有一个配置文件或脚本可以调用它,sshd
但我找不到它。
Solaris 在哪里启动 sshd 守护进程?
它似乎不是从文件启动的rc.*
(根据Solaris 重启后启动脚本未执行):
# /usr/gnu/bin/grep -IR sshd /etc/rc*
#
grep
我无法/etc
完成:
# /usr/gnu/bin/grep -IR --exclude-dir=dev sshd /etc
/etc/ssh/sshd_config:# Configuration file for sshd(1m) (see also sshd_config(4))
/etc/ssh/sshd_config:# This file is used for the SunSSH and the OpenSSH versions of the sshd(1m)
...
/etc/ssh/sshd_config:# Are root logins permitted using sshd.
/etc/ssh/sshd_config:# Note that sshd uses pam_authenticate(3PAM) so the root (or any other) user
<hang here>
答案1
Solaris 10 及更高版本使用服务管理工具 (SMF) 来启动守护进程。SSH 通常由名为 的 SMF 服务启动svc:/network/ssh:default
。
每个服务的 SMF 清单中都指定了启动脚本 - 您可以看到 ssh 服务使用什么命令运行:
# svcprop -p start/exec svc:/network/ssh:default
/lib/svc/method/sshd\ start
有关 SMF 的更多信息,请参阅在 Oracle Solaris 11.4 中管理系统服务。