
chmod 777
再帰的に実行したところ/var/
、SSH 経由で接続できなくなりました。これでchmod 600
問題が解決すると読みました。実行した後は接続できましたが、これはよくない考えでした。
フォルダーのデフォルト モードを見つける方法/var/
や、これを修正する方法はありますか?
Debian-Squeeze 上で実行しています。
答え1
これは、権限の概念がないOSから来た人にとっては非常によくあるエラーです。
sudo chmod -R 777 /
これらはおそらく善意から発行されたものですが、これは多かれ少なかれ、*nix システムに「再インストールするだけ」を推奨することになる唯一のユーザー エラーでもあります。
もしあなたがただchmod -R 755
、そうするなら、あなたは他のものの中で読んで与えるでしょう実行全てのファイルへの権限を誰にでも与える。全てのファイルの実行権限を削除すると(ディレクトリは参照可能にする必要がある)、一部のファイルの実行権限が削除されてしまう。想定実行可能であることなど。
この場合は、おそらくそれほど深刻ではないかもしれません-R /
が、例えば/var/log
、ない誰でも読み取り権限を持つはずです。抜粋:
-rw-r--r-- alternatives.log
drwxr-x--- apache2
drwxr-xr-x apt
-rw-r--r-- aptitude
-rw-r----- auth.log
-rw-r----- boot
-rw-rw---- btmp
drwxr-xr-x ConsoleKit
drwxr-xr-x cups
-rw-r----- daemon.log
drwxr-xr-x dbconfig-common
-rw-r----- debug
-rw-r----- dmesg
-rw-r--r-- dpkg.log
-rw-r--r-- duplicity-backup.0
drwxr-s--- exim4
-rw-r----- fail2ban.log
-rw-r--r-- faillog
-rw-r--r-- fontconfig.log
drwxr-xr-x fsck
drwxr-xr-x hp
drwxr-xr-x installer
-rw-r----- kern.log
-rw-rw-r-- lastlog
-rw-r--r-- lpr.log
-rw-r--r-- mail.err
-rw-r--r-- mail.info
-rw-r--r-- mail.log
-rw-r--r-- mail.warn
-rw-r----- messages
drwxr-x--- mrtg
drwxr-s--- mysql
-rw-r----- mysql.err
-rw-r----- mysql.log
drwxr-sr-x news
-rw-r--r-- popularity-contest
-rw-r--r-- pycentral.log
-rw-r--r-- rssdler.log
drwxr-xr-x samba
-rw-r----- shorewall-init.log
-rw-r----- syslog
drwxr-xr-x unattended-upgrades
-rw-r----- user.log
-rw-rw-r-- wtmp
-rw-r--r-- Xorg.0.log
これを復元するのは簡単ではありません。しかも、それは 1 つのディレクトリだけでした。
全体的に、SSH が再び機能するようになったとしても、簡単には修復できない権限情報の損失が発生しています。完全に個人用のサーバーに関するものであれば、結果はそれほど悲惨ではないかもしれませんが、権限が可能な限り制限されているのには理由があります。たとえば、上で述べたログ ファイルには機密情報が保存されている可能性があり、一般ユーザー権限を持つエクスプロイトがこれを見つけ出し、ルート権限攻撃のためのさらに多くの情報を取得するには十分です。
昨日、地元のフォーラムで誰かが「やってみよう!!!」というヒントを言っていたのを最後に見ましたchmod -R 777
。インターネットを信用してはいけません! :-)