電子書籍の厳選無料作品が豊富!

LINUX自作初心者です。 自宅サーバにネットの設定を終え、sshの設定の合間に
初回ログイン時に自動でhomeディレクトリを作成する設定を追加しログアウトしたところ
二度とログイン出来なくなってしまいました・・・

自宅サーバを初期化するしかないかと思うのですが、この方法あるいは
更に対策がありそうでしたら、ご教授いただきたく存じます。

なにとぞよろしくお願いします。
----------------------------------------------------------------------
■私の設定した手順は以下の通りです。

(1)sshの設定を実施(# vi /etc/ssh/sshd_config )

(2)鍵の作成
 $ ssh-keygen -t rsa1
 Generating public/private rsa1 key pair.
 Enter file in which to save the key (/home/hoge/.ssh/identity):
 /home/hoge/.ssh/identity already exists.
 Enter passphrase (empty for no passphrase): パスワード入力
 Enter same passphrase again: パスワード再入力

↓続けて以下を設定をしようとするも、homeディレクトリができていなかったため中断。
飛ばして(3)へ進みました(普通にmkdirすればよかったのですが・・・)。
 $ cd /home/hoge/.ssh/        ←飛ばして(3)へ
 $ cp identity.pub authorized_keys   ←飛ばして(3)へ

(3)初回ログイン時に自動的にユーザホームディレクトリを作成する設定を実施。
 # cp /etc/pam.d/system-auth /etc/pam.d/system-auth-dist
 # vi /etc/pam.d/system-auth

session required pam_mkhomedir.so skel=/etc/skel umask=0022 ←設定追加

(4)ログアウト

(5)いつものログインIDでログインができなくなる。←★問題発生★
  ↑rootユーザに上がる以前の、電源を立ち上げた直後の最初のログインが
    不能になってしまいました・・・
----------------------------------------------------------------------

A 回答 (1件)

公開鍵認証でホームディレクトリ無し…だと、普通の方法ではできないかと思われますが。


# LDAPなどにユーザー名と公開鍵が登録されている…とかなら…どうでしょうかねぇ……。

さて、回復方法ですが…
まずディストリビューションくらいは明記しましょう。

起動時のブートローダでカーネルオプションを設定できるようであれば、
ランレベル1にすることでパスワード認証とか無視してrootログインできるでしょう。
編集した/etc/pam.d/system-authを元に戻すことで、とりあえず設定済みのローカルユーザでログイン可能になるかと思われます。
# LDAPとかで認証しないのであれば、ローカルユーザは予め作成しておくべきでしょう。

シングルユーザモード(ランレベル1)で起動できない場合は、LiveCDで書き換えるかインストールメディアにレスキューモードがあればそちらから起動することで編集も可能でしょう。
pam_mkhomedirの設定は…どの行の後に書くか…とかの順番も影響したと記憶していますので適当なところに書かないように気をつけた方がよろしいかと。
# ちなみに、ウチの環境ではrequiredではなくoptionalにしていますが…。

あと……
[技術者向] コンピューター > OS > Linux系OS
の方がカテゴリとしてはよかったかと。
    • good
    • 0
この回答へのお礼

失礼しました。ディストリビューションは単なるネットにつながった1台のサーバ構築です。ですからLDAPを行うことも必要ないため、pam.dのファイルをいじる必要がなかったと思いますOrz...

このたびはブートローダ、LiveCDを利用したりといった有用な打開策をご提示いただきまして、まことに感謝いたしております。

お忙しいところ素晴らしいご意見を賜りましてありがとうございました。
「先生」と呼ばせてください!

お礼日時:2011/07/25 16:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!