これは私たちのサーバーの権限を持たないSFTPアクセスユーザーです。今年初め、コロナ19は在宅注文中に使用され、今日は明日の作業の準備に使用されました。
以前のパスワードを忘れたため、コマンドを使用してリセットしましたが、sudo passwd <user>
ログインできませんでした。pw unlock
を使用して明示的にロックを解除し、記録された/etc/master.passwd
パスワードハッシュが正常に変更されたことを確認して確認しました。ただし、sftp
リモートコマンドを使用したり、login
管理者のSSHセッション中にコマンドを使用してログインすることはできません。
その理由は何ですか?
修正する
権限のない他のユーザーのパスワードハッシュをコピーしてもまだログインできませんが、権限のない他のユーザーはログインできます。
答え1
マニュアルページを閲覧しながらコマンドpasswd(5)
を見つけましたpwd_mkdb(8)
。ランニング:
pwd_mkdb -p /etc/master.passwd
問題を解決しました。
本質的に問題は、/etc/master.passwd
ファイルも更新されない/etc/pwd.db
ことです/etc/spwd.db
。これらの2つは、Berkeleyデータベース形式の「キャッシュされた」データベースファイルです(資格情報の検索を高速化するために存在します)。
pwd_mkdb(8)
「パスワードデータベース」、すなわちユーザ情報テーブルを生成するためのシステム管理命令である。先月、サーバーを12.2-RELEASEに更新しましたが、コマンドの実行を忘れたことが原因である可能性があります。