前提
あまりサーバに詳しくはありません。
質問
CentOS7のサーバに、複数のユーザアカウントを作っています。
この時、鍵認証でリモート接続を行った時、
ユーザA(管理者権限)のファイルを、ユーザB(通常ユーザ)が削除できてしまいます。
これを阻止したいのですがどのようにすればいいでしょうか。
ユーザディレクトリ自体は、権限755にしてあります。
これは、Webサーバをユーザディレクトリにディレクション(?)してあり、
権限755にしていないと外部からブラウザアクセスができないからです。
かなり初心者な質問かもしれませんが、やり方をご存じの方がいらっしゃいましたらご教示頂けますと幸いです。
追記
それぞれのユーザフォルダに
/home/ユーザ名/public_html/
を設置し、Webサイトを公開したいので、ユーザフォルダの権限を644
にすることができません。
644にすると、ブラウザからサイトが見えなくなってしまいます。
できれば、一般ユーザが鍵認証でリモートログインした場合、そのユーザのユーザディレクトリ内だけしか見れない、触れないようにしたいです。
よろしくお願いいたします。
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 過去に投稿した質問と同じ内容の質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
checkベストアンサー
+1
状況がよく見えないので端的になりますが、
単純にユーザAの作ったファイルをユーザBが削除出来ないようにしたいのであれば、
その”ファイル”のパーミッションを644にすればOKです。
ディレクトリのパーミッションはそのままでファイルのパーミッションだけ変更すればブラウザから見えなくなるということも無いはずです。(cgi等の実行が必要なファイルは除く)
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 88.35%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる
2016/05/13 17:38
確かに、ユーザフォルダを644にすれば良いのですが、
Webサイトのフォルダを「~/ユーザ名」にしたいために、
/home/ユーザフォルダ/public_html/
に、Webページ用のフォルダを設置しております。
ここで、ユーザフォルダの権限を644にしてしまうと、Webブラウザからアクセスできなくなってしまいます。
更に、/var/や/etc/などのフォルダも見えてしまうのは良くないと思います。
一般権限のユーザは、鍵認証接続でできれば、/home/以下、または、自身のユーザフォルダ内までしか移動できないようにしたいのです。
こちらは可能なのでしょうか?
よろしくお願いいたします。
2016/05/13 17:57
”ファイルのパーミッション”を644にすればOKです。
他の要件が出てきたので。。。
お望みの事はchroot
http://d.hatena.ne.jp/flageo/20090215/p1
で対応できると思いますが、
率直な感想としてはちゃんと運用と合わせて設計/設定が出来る人に依頼する必要がある状況であるように思いますよ。
2016/05/13 19:15
2016/05/13 19:29
2016/05/14 04:23
>”ファイルのパーミッション”を644にすればOK
実際そのユーザでログインして試したのですが、パーミッション777のフォルダに入れたパーミッション644のファイルが削除できてしまいます。
なので困っています。
$ rm test.txt
書き込み保護されたファイルを削除しますか? y
→削除される
>他の要件が出てきたので。。。
>お望みの事はchroot
>http://d.hatena.ne.jp/flageo/20090215/p1
>で対応できる
ありがとうございます。
こちらのコマンドは初めて知りました。
調べてみます。
>率直な感想としてはちゃんと運用と合わせて設計/設定が出来る人に依頼する
これですと、勉強にならないので意味がなくなってします。。。
というか、知識をつけるためにあれこれ試している最中です。
>ユーザアクセス制御の設計は最初に行うべき部分で後からだとどうしても限界がある
最初に設定もできるのですか?
どのように設定していくのでしょうか?
設計…と言われても、CentOSをインストールした時点で、終わっているのではないでしょうか?
>`public_html パーミッション` あたりで検索してみましょう
ありがとうございます。
こちら調べてみます。
2016/05/14 06:35
なので困っています。
パーミッション755のディレクトリの中の644のファイルというのが今回のケースだと思いますが、それでも他人が消せてしまいますか?
2016/05/16 22:14
パーミッション755だと、削除できませんでした。失礼しました。