web-dev-qa-db-ja.com

Sambaユーザーの削除:pbdeditとsmbpasswdの違いは何ですか?

違いは何ですか

$ pdbedit -x

そして

$ smbpasswd -x

sambaユーザーを削除するには?

12
nieg

smbpasswdpdbeditの両方をSambaユーザー管理に使用できます。

質問への回答:Samba 4以降、これら2つのコマンドに違いはありません。両方のコマンドは同じファイル(smbpasswdまたはtdbsam形式)で動作し、ジョブを実行します。

答えを拡張する:

smbpasswdは古いバージョンです。同じ名前のファイル形式で保存されているSamba資格情報を管理するために使用されました-smbpasswd。 RedHatベースのディストリビューションでのファイルのデフォルトパスは/etc/samba/smbpasswd(明確にするために、プログラム自体、ファイル形式、およびsmbpasswdプログラムが動作するその形式のデフォルトファイルはすべてsmbpasswdと呼ばれます)。

pdbeditは、Samba 3開発サイクル中にsmbpasswdの代わりとして登場しました。 rootユーザーの観点から見ると、pdbeditsmbpasswdが実行できるすべての操作とそれらのスーパーセット(アカウントのセキュリティとポリシー設定の管理)を実行できます。 pdbeditのSamba資格情報を保存するための「ネイティブ」形式はtdbsam-簡単なDBベースのパスワードストレージバックエンドです。 RedHatベースのディストリビューションでは、デフォルトのファイルパスは/var/lib/samba/private/passdb.tdb

pdbeditの問題は、rootのみが使用できるのに対し、smbpasswdは、通常のユーザーがpasswdコマンドと同様の方法でSambaパスワードを変更するために使用できることです。 Linuxシステムアカウントの場合。したがって、私の理解は、Samba 4以降、ユーザー管理の仕事はpdbeditに渡され、smbpasswdはroot以外のユーザーが自分のパスワードを変更できるように残されていることです(ただし、rootはまだsmbpasswdを使用して、Samba資格情報ストアを制限された方法で管理します。

8
golem

pbdedit man page から:

抜粋

Pdbeditツールはpassdbモジュラーインターフェイスを使用し、使用するユーザーデータベースの種類に依存しません(現在、smbpasswd、ldap、nis +、tdbベースがあり、ツールを変更せずにさらに追加できます)。

smbpasswd man page の間:

抜粋

デフォルト(引数なしで実行した場合)では、ローカルマシン上の現在のユーザーのSMB=パスワードを変更しようとします。これは、passwd(1)プログラムが機能する方法に似ています。smbpasswdは、 passwdプログラムがsetuidルートではなくクライアントサーバーモードで動作し、ローカルで実行されているsmbd(8)と通信するという点で、どのように機能するか。結果として、smbdデーモンが成功するには、ローカルでmachine。UNIXマシンでは、暗号化されたSMB=パスワードは通常smbpasswd(5)ファイルに保存されます。

したがって、pbdeditはさまざまなSambaパスワードバックエンドを操作できますが、smbpasswdはそのタイプのバックエンドしか操作できません。

4
slm