2017-04-20 76 views
0

我试图解决Ubuntu 14.04(主要是SSH)failstart。我发现一些开发人员执行了一些可疑的命令。由于它们被执行,我无法再使用SSH访问它。COMMAND =/bin/chmod -R 777日志发生故障后

root : TTY=pts/1 ; PWD=/var/www/html/projects/at2/htdocs/public ; USER=root ; COMMAND=/bin/chmod -R 777 

root : TTY=pts/1 ; PWD=/var/www/html/projects/at2/htdocs/public ; USER=root ; COMMAND=/bin/chmod -R 777 ./images 

root : TTY=pts/1 ; PWD=/var/www/html/projects/at2/htdocs/public ; USER=root ; COMMAND=/bin/chmod -R 777 ./

该日志文件被存满后像

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 
@   WARNING: UNPROTECTED PRIVATE KEY FILE!   @ 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 
Permissions 0777 for '/etc/ssh/ssh_host_rsa_key' are too open. 
This private key will be ignored. 
bad permissions: ignore key: /etc/ssh/ssh_host_rsa_key 
Could not load host key: /etc/ssh/ssh_host_rsa_key 

究竟每个命令都和我怎么可以回滚他们的消息?

+2

你不应该给你的开发给予这么大的权力elopers。 – JiriS

+0

'我如何回滚它们'您无法将其恢复。除非您有OS/FS备份,或者您能够从姊妹系统恢复权限。 (但这是严重的脚本...) – wildplasser

+0

是的。我完全同意你的看法。至少这发生在我们的“个人”服务器上。 – Shimazakhi

回答

0

你不应该给你的开发人员多少力量,我会建议重新安装整个系统,而不是修复所有不正确的权限。

最后一条命令已将所有文件的访问权限设置为777,这意味着给予用户,组和其他人以读取,写入和列表的权利。

问题是,ssh不喜欢错误地设置权限,然后无法启动。要解决这个问题,并获得即时访问您可以使用下面的命令:

chmod 600 -R /etc/ssh 
0
COMMAND=/bin/chmod -R 777 ./

这可能是一个错字。他们想运行chmod -R 777 ./并在两者之间获得了空间。

这使得系统上的所有文件都可以被任何用户读写。 SSH现在会拒绝登录,因为任何人都可以修改主机私钥,这意味着没有人可以信任登录。但这只是其中一个问题。您的sudo访问也可能会被打破,以及其他许多事情。

您无法将其折回。 (或者至少不需要花费大量的时间)您将不得不重新安装整个主机。 (更快的选项)此时ssh连接将被拒绝。

我猜只有几步之遥,现在是:

  • 弄清楚如何获得受影响的副本系统,让你拥有的东西完全备份你需要
  • 学习有关文件权限和为什么没有文件应该曾经有模式0777
  • 教有关文件权限的开发商和为什么没有文件应该曾经有模式0777