我正在安装一个新的CentOS7,它的sshd服务运行正常。然后我下载openssh7.5p1的源代码,构建它并将其安装到默认目录“/ usr / local / sbin / sshd”。我想用它来替换系统的sshd。
我修改文件“/usr/lib/systemd/system/sshd.service”,更改以下行:
old:
ExecStart=/usr/sbin/sshd $OPTIONS
new:
ExecStart=/usr/local/sbin/sshd $OPTIONS
之后,键入命令“service sshd start”,命令无法返回并且似乎挂起。看起来如下:
[root@localhost ~]# service sshd start
Redirecting to /bin/systemctl start sshd.service
我按Ctl + C终止命令。然后使用命令“netstat -ntlp”查找“sshd”已经启动,不知道为什么“service sshd start”无法返回提示符。
[root@localhost ~]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 2443/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 63144/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1043/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1815/master
tcp6 0 0 :::111 :::* LISTEN 1/systemd
tcp6 0 0 :::22 :::* LISTEN 63144/sshd
tcp6 0 0 ::1:631 :::* LISTEN 1043/cupsd
tcp6 0 0 ::1:25 :::* LISTEN 1815/master
我尝试手动启动sshd,工作正常,sshd启动成功(没有任何警告消息),命令立即返回。命令如下:
[root@localhost ~]# /usr/local/sbin/sshd -f /etc/ssh/sshd_config
感谢任何帮助。如果您想了解更多信息,请与我们联系。感谢。
答案 0 :(得分:0)
修改你的.service中的类型怎么样? 你试过把它设置为空闲吗? 也许systemd等待从sshd接收消息,似乎挂起..