我想在 debian 8 上运行两个 sshd 守护程序(使用 openssh),一个用于管理,一个用于 sftp。
这在 Debian 7 中曾经很容易,但使用 systemd 就变得更加困难。
到目前为止我已经创建了sshd_config_second
和ssh_config_second
。
我如何创建服务文件sshd_second.service
并启动守护进程?
我查看了 sshd.service,但其中没有引用该sshd_config
文件。我应该在哪里将这些配置文件提供给守护进程?
更新:
我从 RHEL7 开始遵循此操作并成功:
答案1
默认的 Debian 8 systemd sshd 单元已经存在/lib/systemd/system/ssh.service
,并且非常简单。您需要做的就是cp /lib/systemd/system/ssh.service /etc/systemd/system/ssh_sftp.service
将文件编辑成类似这样的内容。
[Unit]
Description=OpenBSD Secure Shell server
After=network.target auditd.service
ConditionPathExists=!/etc/ssh/sshd_not_to_be_run
[Service]
EnvironmentFile=-/etc/default/ssh
ExecStart=/usr/sbin/sshd -D -f /etc/ssh/sshd_sftp_config $SSHD_OPTS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
[Install]
WantedBy=multi-user.target
Alias=ssh_sftp_d.service
创建该文件后,启用并启动它。systemctl enable ssh_sftp.service
和systemctl start ssh_sftp.service
。
就像@Michael Hampton 所建议的那样,基本上与针对 Redhat 建议的指令完全相同。