• ベストアンサー
  • すぐに回答を!

管理者ユーザを作ったつもりなのですが

管理者グループに、新規testユーザを作成しました。 そのtestユーザでshadowファイルを確認しようとしたところ 権限がないと表示されました。 その理由が分からないのです。 [root@host ~]#useradd -g root test [root@host ~]#su test [test@host root]$ cat /etc/shadow cat: /etc/shadow: 許可がありません [test@host root]$ ls -l /etc/shadow ---------- 1 root root 734 1月 19 17:36 2013 /etc/shadow rootグループにtestユーザを割り当てたので、 testユーザでshadowファイルを見れると思っていのですが見れないのです。 理由がわからないのです。 /etc/shadowファイル所有者がrootだからでしょうか? rootグループにtestを参加させているだけではだめなのでしょうか? ご教授お願いします。

共感・応援の気持ちを伝えよう!

  • 回答数2
  • 閲覧数151
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1

ls -l /etc/shadowの結果を見ると、すべてのパーミッションがOFFとなっています。 rootグループに所属するユーザが参照するためには、グループユーザに対する 参照権限が必要です。ですが、shadowファイルには、グループユーザに対して そのような権限は与えられていないので見れないわけです。 どうしても、与える必要があるのであれば、以下のコマンドでパーミッションを 変更することで、見れるようになると思います。(rootユーザで実施します) # chmod g+r /etc/shadow ただし、セキュリティ的にはまったく推奨されません。自己責任でお願いします。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

>rootグループに所属するユーザが参照するためには、グループユーザに対する 確かにそうですね。言われて気づきました。 # chmod g+r /etc/shadow コマンドまで教えて頂きありがとうございます。 すっきりしました。

その他の回答 (1)

  • 回答No.2

そもそも論ですが、 http://search.yahoo.co.jp/search?p=root%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81%AE%EF%BC%A9%EF%BC%A4&aq=-1&oq=&ei=UTF-8&fr=ie8sc&n=10&x=wrt から http://cmd.misty.ne.jp/basic/04.html http://plan9.aichi-u.ac.jp/unix/root.html http://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%BC%E3%83%91%E3%83%BC%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC などを見れば、何で管理されているかわかるかと。 特にLinux のコマンドベースや、システムに近い所だと、UNIX系時代からのやり方を引き継いでいます。 root ユーザーしか権限があたえられていないことの方が多いわけです。その辺がWindowsとは最初からセキュリティーが違うところです。 Solaris なででもそうですが、デフォルトで付いている、シェルスクリプトの起動用ファイルにはユーザーID又ユーザー名で制御するなんて、とんでもなく低レベルの物が沢山存在します。 と言うのも、root でそのOSを使用することがほとんど無いからです。Windows では root レベルのユーザーで多くは操作してしまうものです。 管理者一人が root で操作し、普段使ってもらう人には su で実行してもうらう。なので、root 以外に触れるものは極力ユーザーデーターや、アプリレベルになっている。 で元戻って、 >/etc/shadow は手動で直接はいじってもらいたくないための工夫でしょう。ファイルの移動、こぴーなど特別な救済のために、最低限のアクセス権です。 このファイルを壊せば、当然ログインできなくなります。修復不可能なものです。もちろん、ちゃんと仕組又は、バックアップをしっていれば、できますが。それほど大事な物なので、触らぬ神にたたりなし。です。 http://search.yahoo.co.jp/search?p=%22%2Fetc%2Fshadow%22+%E8%A7%A3%E6%9E%90&aq=-1&oq=&ei=UTF-8&fr=ie8sc&n=10&x=wrt で見れば、中身は意味不明なものです。見ても意味ありません。 最初みなさん、やりたがるんですよね。このファイルいじれば、なんとかなる。なんて。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

>その辺がWindowsとは最初からセキュリティーが違うところです。 なるほど。私もWindowsの人間で、管理者権限を多数持つユーザが作れると 考えており、admini権限を持っているグループがいれば、 管理者ファイルは操作できるだろうと考えていました。 ありがとうございました。

関連するQ&A

  • CENTOSでadduserで作成したユーザでログインできない

    *環境 CENTOS4 GNOME bash *症状 [root@myhost ~]# su - hoge su: パスワードが違います ・ルートユーザにもかかわらず一般ユーザにログインできない ・CENTOSのグラフィックログインで一般ユーザで入れない(rootのみ入れる) *ためしたこと root でGUIログインののち、 ユーザ追加 #adduser hoge # id hoge uid=508(hoge) gid=508(hoge) 所属グループ=508(hoge) パスワード設定 # passwd hoge Changing password for user hoge. New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. shadow確認 # cat /etc/shadow | grep hoge hoge:$1$XkexNO3i$HRO.MkHbbZPn2sImrUJ9O/:13650:0:99999:7::: passwd確認 # cat /etc/passwd | grep hoge hoge:x:508:508::/home/hoge:/bin/bash homeディレクトリ確認 # ls -la /home/ | grep hoge drwx------ 3 hoge hoge 4096 5月 18 01:12 hoge 上記設定のあと、 # su hoge su: パスワードが違います となってしまいます。 初歩的な質問ですが困り果てております よろしくおねがいします。 ちなみにnologinは作成されていません。 # ls /etc/nologin ls: /etc/nologin: そのようなファイルやディレクトリはありません

  • centOS5ユーザー管理

    centOS5(ホスト名yamapc)を使用しています。 メールサーバーをyamapcで運用しようとして、 メールアカウントを追加するにはOSにユーザーアカウントを追加すればよいというのを 調べました。 もうすでにユーザーアカウントは作成してあるはずだったので、 cat /etc/passwd で調べたところ 使用したいユーザー名は載っていませんでした。 そこでユーザーアカウントがないのかと思い useradd hoge としたところ、 useradd: ユーザ hoge は存在します と表示されました。 homeはあるか調べてみたところ /home/hoge ディレクトリはありました。 中途半端に設定になっているのではと思い、 userdelを実行してみたところ、以下の様に表示されました。 [root@yamapc mail]# userdel -r hoge userdel: パスワード・エントリ削除のエラーです userdel: シャドウ・パスワード・エントリ削除のエラーです userdel: /home/hogeは hogeの所有ではありません, 削除は行いません もう一度useraddをしてみたところ [root@yamapc mail]# useradd hoge useradd: ユーザ hoge は存在します と表示されました。 homeのディレクトリを調べたところ drwxr-xr-x 2 root root 4096 11月 2 2011 hoge と表示されました。 これはどのようにしたらきちんとuseraddを追加した状態にできるでしょうか? useraddできちんと追加された状態で、このyamapcのメールサーバーで送受信をしたいと 考えています。 よろしくお願いします。

  • rootに他の名前をつける

    セキュリティの為、rootに他の名前をつけてroot権限はそのままにする。 また、他の一般ユーザーにroot権限をもたせることを したいのですが、可能でしょうか? 一般ユーザーにをrootグループに所属させても/etc/shadowファイルを見ることはできませんでした。

  • telnet でログイン出来ないユーザ

    昔使用していたLinux機を久々に起動し、新規のユーザを作成したところ そのユーザで、telnetでのログインが出来ません。 既存のユーザは問題なくログインできますし、既存でログインした後に su で新規作成のユーザに変更も出来ます。 また、コンソールからのログインは、新規ユーザでも可能です。 同じPCからですし、host.allow , host.deny 系の設定ファイルも 特別な設定のないことは確認しました。 以下、作業した手順です。 ・既存ユーザ[test1]でログイン ・su - root で rootに変更 ・useradd - test2 で、新規ユーザ[test2]を作成 ・passwd test2 を実行して、test2のパスワードを設定 →新規に telnet 接続でログインしようとすると失敗(Login incorrect) OSは、Linux release 2.4.9-e.9.30ml です。 どなたかわかる方いらっしゃいましたら、よろしくお願いいたします。

  • chownを使い、特定のユーザーだけ一気に他のユーザーに変更したい

    Linuxで、chownを使ってあるディレクトリ以下の所有者を一気に別のユーザーに所有者に変更したいのですが、どうすれば良いでしょうか。 test1というユーザーが所有者のディレクトリ、ファイルのみを全てtest2に変更し、rootやnobodyはそのままにしておきたいのです。 :例(ディレクトリ名は適当です) ディレクトリ名 現在の所有者 新しい所有者 bin test1 test2 bin/max test1 test2 line root root man test3 test3 home test1 test2 以上のように、所有者の移行を一気に行いたいのです。 方法などございましたら、お教えください。

  • Solaris9 rootユーザのパスワード有効期限の設定方法

    Solaris9 のrootユーザのパスワード有効期限を無期限に設定したいのですが、どのように設定すればよいのでしょうか? 現在、「/etc/shadow」のrootユーザの「Max」カラムは「182」となっています。 ここを「0」に変えれば良いのでしょうか? 教えてくださいm(_ _)m

  • スペシャルファイルのグループについて

    スペシャルファイルをlsで見た際、グループ名にカンマが含まれています。(disk 3, 0) /etc/groupファイルを見てもdiskというグループはあるがdisk 3, 0というグループはありません。 これはいったい何を意味しているのでしょうか? <例:スペシャルファイルのls> [root@localhost test]# ls -l /dev/hda brw-rw---- 1 root disk 3, 0 Oct 14 15:21 /dev/hda <例:通常ファイルのls> [root@localhost test]# ls -l ./sc -rw-r--r-- 1 hoge hoge4 34 Oct 9 17:28 ./sc

  • rootへのスイッチユーザについて

    WEBサーバー周りに関して超初心者です。WinSCPを使ったファイルのアップロード、webminを使ったサーバーの再起動くらいしか、WEBサーバーと関わったことがありません。 今回、あるファイルを上書きアップロードしたら、「root権限でしかファイルを上書きできない」状態だったので、rootでログインしようとしたのですができないため色々調べたら、設置しているデータセンターから 「一旦adminでログインしたのち「su」コマンドを使って root へスイッチユーザを行ってください」 と言われました。 データセンターからはこういった手順は具体的に教えてもらえないため、初心者向けのサイトなどで昨日からずっと調べているのですが、さっぱり分かりません。これを機会に今後勉強しようと思うのですが、取り急ぎ、この「「su」コマンドを使って root へスイッチユーザを行う」やり方を教えてください。 サーバーはlinux系、CentOSがインストールされているようです。←これも正直、あまり意味が分かりません。 よろしくお願いします。

  • passwd/shadowファイルの「smtp」ユーザーについて

    メール/POPサーバーのpasswdファイルを別のマシンのもので上書きしてしまいました。 ユーザーはuseraddでとりあえず修復(所有権変更も)できたかと思ったのですが、その後バックアップしたファイルが見つかり比較したところ、passwdファイル、shadowファイルに「smtp」というユーザーが以前は登録されていました。 passwdファイル smtp:x:0:0:Mail Daemon User:/: shadowファイル smtp:NP:6445:::::: そこで以下のどの対応が好ましいのか教えていただけますか。 1) バックアップしてあったpasswd/shadowファイルで書き換え。UID変わってしまっているのでユーザーのメールファイルは所有権を変更。そのときの注意点は。 2) smtpユーザーを追加。 useradd -u 0 -o -d / -g 0 smtp vipw → (passwdファイル)→shadowファイル smtp:*LK*::::::: を smtp:NP:6445:::::: に変更。 (これで大丈夫なのか?) 3) このユーザーは不要なのでなにもしなくてよい。 使用環境は、 OSはSunOS 5.6 sendmailは 8.11.6 (以前にバージョンアップ) です。3)だとうれしいですが、いかがなものでしょうか。

  • ユーザー削除後のそのユーザーで作成されたファイル

    ユーザーを削除した所、そのユーザーが所有者になっていたファイルを ls -l で見てみると その所有者の所が、"500" となっていました。 削除したユーザーが所有者だったファイルを別のユーザーにが 所有者になるように一括で変更したいのですが、どうすれば良いでしょうか。 宜しくお願いします。