• ベストアンサー

Linuxのユーザ管理について

ユーザのアカウントを発行し、そのユーザが最初にログインした際に、強制的にパスワードを初期値から変更させるようにするにはどうすれば良いでしょうか。WindowsのサーバOSにはそういった機能があるのですが、Linuxでも可能でしょうか? OSはRedHat系です。

  • toss
  • お礼率37% (9/24)

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

  • ベストアンサー
  • Lean
  • ベストアンサー率72% (435/603)
回答No.2

Fedora Core 4とRedHat Enterprise Linux WS4で下記の通り実行して確認した時には、初めてのログイン時(ユーザ名を入力してEnter直後)に「直ちにパスワードを変更するよう要求されています(rootが強制しています)」と表示され、新しいパスワードの入力になるのですが。 # useradd -p "" testuser # chage -d 0 testuser

toss
質問者

お礼

FedoraCoreでやってみたらできました。 どうもありがとうございました。 返事が遅くなってしまってすみませんでした。

その他の回答 (1)

  • Lean
  • ベストアンサー率72% (435/603)
回答No.1

useraddコマンド等でユーザの追加後に # chage -d 0 username ではどうでしょうか?

toss
質問者

お礼

回答ありがとうございます。 試してみましたが、最初っからアカウントがロックされてしまいました。orz

関連するQ&A

  • Linux サーバのユーザ情報を他のサーバへ

    今回、サーバのOSをLinuxからRedHatに変更しようと思っています。 そこで、質問なのですが、ユーザ情報をそのまま別サーバへ移すには、 どうしたら良いのかお伺いしたいのです。 単純にpasswdファイルやgroupファイルのコピーではダメだと思うのですが、 どうしたら別のサーバへユーザ情報を移せるのかわかりません。 ホームディレクトリを作成するには、passwdファイルを作成しなおす必要がありますよね? しかし、大量のユーザを手で入力するのは無理があるし、 タイプミスを考えるとあまり現実的ではありません。 更に、ユーザのパスワードはユーザが管理しているので初期値と変わっている可能性があり、 管理者にはわかりません。 パスワード情報を正しく取り出し、ユーザ情報を別サーバに同じ内容で移すにはどうしたらよいでしょう? どなたか教えていただけませんでしょうか?

  • linuxのユーザーアカウントの管理をwindows server で行うことはできますか?

    これまで、何度もお世話になっております。 私のところでは windows server を昔から使っていますが、この2,3年linuxの利用が増えてきて、現在では数10台のlinux マシンを使っております。しかし、windows はActive directory でユーザーアカウントは統合的に管理しているのですが、linux は原始的な1台ごとに /etc/passwd, /etc/shadow で管理しております。最近よくlinuxでLDAPサーバーを動かし、ユーザーアカウントの管理を統合するような記事を見かけますが、逆に windows server がある状況で、linux が windows server のユーザーアカウントを利用することは出来ないでしょうか? windows server も一種の LDAPサーバーのように思うのですが。

  • PHPで、UNIX上のユーザパスワード変更

    PHP3を用いて、クライアント(Webブラウザ)から サーバ(Linux:RedHat6.2J)上のあるユーザのパスワード変更を したいと考えています。 パスワードはroot権限がないと変更できないと思うのですが、 PHPでどうにかできないでしょうか。

  • PerlでLinuxのユーザー認証・管理プログラム

    ブラウザでLinuxのユーザー名とパスワードと入力して、 ユーザー認証してログイン後、Linuxユーザーの パスワードを自分で変更できるプログラムが作りたいのです。 /etc/passwdにパスワードが直接記録されていれば簡単なのでしょうが、 シャドウパスワードなので苦労しています。LinuxはFedora Core3です。 まず、/etc/shadowに記録されているような、 $1$ではじまる暗号化されたシャドウパスワードをPerlで作るには どのようにしたらいいのでしょうか。 pwconvのソースをみたらどんなアルゴリズムかわかると思い、 shadow-utilのSRPMをインストールしてみたりしましたがわかりませんでした。PHPのメーリングリストに $salt = substr(md5(microtime()), 0, 9); return crypt($password, "$1$" . $salt); このようなコードがあったのですが、これでは$saltが毎回 代わってしまい、よくある $salt=substr(暗号化されたパスワード,0,2); if(crypt($pass,$salt) ne 暗号化されたパスワード){ &err("パスワードが違います"); } のような認証ができないのではないかと思いました。 Linuxではどのようなアルゴリズムでシャドウバスワード を作り、パスワードの認証をしているのでしょうか。 つまり、簡単にいうとPerlでシャドウパスワードを使った Linuxユーザーのパスワード認証と パスワード変更ができないか、ということなのです。 また、Perlでシャドウパスワードなど作らなくても system()などを使ってLinuxのコマンドを使えば 各ユーザーの認証やパスワードの変更がブラウザでできるという場合は、 教えていただけないでしょうか。 どうかご教示ください。よろしくお願いします。

  • ユーザーアカウントの移行等について教えてください

    はじめまして。現在LASER5 linux 6.0 を使用してるのですが機械も古くなってきたので思い切って RedHat Linux 7.2 へ移行しようと思います。 (機械もOSもリニューアルするつもりです) 現在の環境を新しいサーバーへ移行することは可能でしょうか?というのもソフトの設定などはバージョンもあがる為再設定しようと思っていたのですがユーザーアカウントの移行が出来ずに困っています。 (パスワードなども本人任せですが本人も覚えてないという状況なのです。) ご存知の方いらしましたらよろしくお願いします。

  • LinuxクライアントのAD参加

    LinuxクライアントをAD参加させるには、クライアント内にもユーザーを作成しないとダメですか? ADサーバーはWindows server 2008です。 Windows8などのWindows端末からは、PCにユーザーを設定しなくても、ADへの設定さえあればログインきます。 CentOS7の端末をドメインに参加させようとしました。 CentOS7のユーザー設定で何も設定せず、AD上のユーザーIDのみでログインしようと試みてもログインできません。 CentOS7のユーザー設定で、AD上のユーザーと同じユーザーを作成したらログインできました。 そして、AD上のアクセス権限は有効に働いていました。 AD上のユーザーのパスワードを変更しました。 Windows8などのWindows端末からログインすると、変更後のパスワードでログインできました。 CentOS7の端末からログインするには旧のパスワードでログインしないと入れませんでした。 旧のパスワードでログインしても、AD上のアクセス権限は無効で、見たいファイルが見れませんでした。 CentOS7のユーザー設定で新パスワードに変更し、AD上のパスワードと同じにしたら、また使えるようになりました。 何か悪いのでしょうか? それとも、そんなものなのでしょうか?

  • ユーザアカウント

    現在TurboLinux 7を使っています。 proftpdサーバーを構築しました。とりあえず動いているようです。 X上でシステム→ユーザー管理のところでアカウントを追加しました。 普通にユーザー名とパスワードを設定しました。そのほかは基本的には設定変更していません。(仮にユーザー名をuser001とします) /home/user001 というディレクトリはできます。(ここまでは問題ないと思いますが。) WindowsマシンでFTPソフトを使ってアクセスしようと思いますとパスワードが通りません。 パーミッションの値は755です。(X上で設定しました) ところが最初にOSのインストールの時に作成したユーザー名は難なくアクセスできます。(普通にログインできます)いったい何処がどう違うのでしょうか? ここ、1,2ヶ月程度から始めたばかりなんでいまいち分かっていないところがあります。 お知恵をお借りしたく思います。よろしくお願いいたします。

  • Linuxでの新規ユーザー追加について

    マイクロソフトのVirtual PC 2007 で Vine linux 4.2 (server仕様)で、実際にサーバーを導入するときのために実験をしています。 某サイトを見ているとセキュリティ上、rootの他に新規にユーザーを作成したほうがよいということがわかりました。 そのサイトの通りに、ユーザーを追加することはできたのですが、新しく追加したユーザーにパスワードを設定ために (1)# passwd ○○○ ← パスワード設定 (2)Changing password for user ○○○. (3)New password: ← ○○○のパスワード応答 (4)Retype new password: ← ○○○のパスワード応答(確認) (3)のNew password: とはでてくるのですが、いざパスワードを入力しようとしても入力できません。 rootにはちゃんとパスワードを設定することが出来ました。 また、どのユーザーでもパスワードを入力することができません。 ちなみにrootでログインしています。 どうすれば、新しいユーザーにパスワードを作成することができますか?教えてください。よろしくお願いします。

  • ユーザーアカウント変更後のログイン

    ユーザーアカウント名を変更後、ようこそ画面を省略した設定でログインしようとすると、パスワードを入れる画面でユーザーアカウント名が変更前の状態で表示されます。表示名、パスワードを変更したのですが、変更前の表示名で変更後のパスワードをいれてログインはできるのですが、その後再度ログオフしてログインしても立ち上げたときのログイン名は変更前のユーザーアカウント名です。OSはXPです。 変更の仕方がわかりません。 ご存知の方、よろしくお願いします。

  • Linux、HP-UXサーバの一括ログイン確認、一括パスワード変更を行

    Linux、HP-UXサーバの一括ログイン確認、一括パスワード変更を行いたい。 現在、サーバの保守・運用業務にて、アカウント貸出/返却を行っています。 アカウント貸出の際に、現状パスワードが正しいかをログオン確認して、 貸し出すと言う作業が発生し、 アカウントが返却されたら、パスワードを変更すると言う作業を行っております。 現状、上記2つの作業を普通に行えば、 (1)現状のパスワード確認(ログイン確認) TeraTermなどを使用してSSH2でログイン→ログインできるかを確認する。 (2)パスワード変更 アカウントの返却→passwdコマンドによりパスワードの変更→ 変更したパスワードでログインできるか確認 と言う作業を行っているのですが、現状、アカウントを貸し出す件数が 100件と言うように件数が多いので、上記を手動で行っていて、 非常に工数がかかっております。 (1)に関しては、 サーバ名1 アカウント名1 現状のパスワード1 サーバ名2 アカウント名2 現状のパスワード2 サーバ名3 アカウント名3 現状のパスワード3 の様なリストファイルを作り、それをTeraTermのマクロなどを実行して、 一括して、ログインを確認を行うとか、 (2)に関しては、 サーバ名1 アカウント名1 現状のパスワード1 新パスワード1 サーバ名2 アカウント名2 現状のパスワード2 新パスワード2 サーバ名3 アカウント名3 現状のパスワード3 新パスワード3 の様なリストファイルを作り、それをTeraTermのマクロなどを実行して、 一括して、パスワード変更を行うとか、 件数が多くても、一括で行えるようなツールやスクリプトは作成可能でしょうか。 そのようなツールがあれば、ぜひ教えて頂きたいです。 ・ちなみにOSは、Linux(RHEL)サーバと、HP-UXサーバがあります。 ・サーバ名は、hostsファイルによって、名前解決が出来るので、  単純にホスト名を指定できます。 ・サーバへのログインは、SSH2で行っております。 以上、よろしくお願いします。