我可以不用ssh访问远程服务器吗?

SSH连接已经停止了在linux服务器上的监听,nmap的输出是

PORT STATE SERVICE 21/tcp open ftp 80/tcp open http 199/tcp open smux 443/tcp open https 5000/tcp open upnp 9102/tcp open jetdirect 

有没有一种方法来远程启用SSH?

您需要访问Linux机器的控制台以再次启动ssh服务 – 这可能涉及到与托pipe提供商一起logging票证。 如果服务未设置为在启动时启动,则重新启动可能无法解决此问题。

你可能不走运。 如果这些服务甚至接近正确configuration,他们不会给你你需要的访问。 如果没有其他的工作,你可能会看重启。

更有可能的是,如果SSH正在工作,现在不是和它不再监听,那么(很可能),你不需要重新启动。 您可能需要到控制台(非SSH),使用支持与托pipe服务提供商一起login票证,或让某人为您安排系统。 我怀疑SSH可能被挂起,只需要重新启动(有时你可能必须杀死旧的ssh PID才能使重新启动工作,这取决于SSH挂起有多糟糕 – 如果这样做不起作用,则可能需要删除SSHlocking文件,如果事情真的牵手)。 在Linux发行版中,由于软件问题,很less重新启动 – 通常使用命令行工具的方法很多。

如果有远程重新启动选项,我不推荐它,但是,如果这是您唯一的方式,请自担风险。

由于您有FTP和HTTP访问权限,如果您的系统上有PHP或其他脚本语言,您可以上传这样的文档来为您提供一个shell作为web服务器用户:

 <?php echo "starting shell<br>"; system("cd /tmp; mkfifo fifo; nc -l 2000 <fifo | bash -i &> fifo ; rm fifo"); echo "done<br>"; ?> 

不幸的是,你将没有控制terminal,所以你将无法运行“su”来重新启动sshd。