赞
踩
不小心在搞vsftpd时候执行了"chmod -R 777 /"的命令,直接修改了所有文件的权限。瞬间爆炸,其实Linux 中的每一个文件或目录都包含有访问权限,许多功能配置文件需要特定的权限才能工作。
比如SSH,/.ssh目录下的每一个文件都需要特定的权限和拥有者才可以使用,否则使用SSH连接服务器时就会出现"Permission denied (publickey,gssapi-keyex,gssapi-with-mic)."的错误,
关于Permission denied (publickey,gssapi-keyex,gssapi-with-mic).这个错误的解决方法,网上有很多,但是都有点误导人。总结了一下排查方法就是下面三点:
首先在服务器本地测试ssh 127.0.0.1,如果可以那就是防火墙的问题。网上很多解决方法,这里不在写,很好解决。
若本地连接有问题,首先打开配置文件sshd_config寻找问题(vim /etc/ssh/sshd_config)。这里简单总结几个必须要修改的配置:
RSAAuthentication yes
PubkeyAuthentication yes #这两项为打开公钥模式
AuthorizedKeysFile .ssh/authorized_keys #配置公钥记录文件
PasswordAuthentication yes #打开密码验证模式
scp root@目标机器IP:system.bak文件路径 本地存放system.bak路径
然后执行命令:
setfacl --restore=systemp.bak
最后重启系统方能恢复正常。当然如果不想那么麻烦,直接重装系统。
最后给自己说一句,切记,Linux下的文件不能随便修改权限。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。