web-dev-qa-db-ja.com

sshPublicKey属性が表示されない-OpenLDAPPHPLDAPSSHキー認証

SshPublicKeyスキーマを正常に認識できるものからインポートしましたが、属性がPHPLDAPADMINに表示されません。

誰かがこの問題の経験がありますか?

私が逐語的にしたこと:

Sudo nano openssh-lpk.ldif

dn: cn=openssh-lpk,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: openssh-lpk
olcAttributeTypes: ( 1.3.6.1.4.1.24552.500.1.1.1.13 NAME 'sshPublicKey'
  DESC 'MANDATORY: OpenSSH Public key'
  EQUALITY octetStringMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
olcObjectClasses: ( 1.3.6.1.4.1.24552.500.1.1.2.0 NAME 'ldapPublicKey' SUP top AUXILIARY
  DESC 'MANDATORY: OpenSSH LPK objectclass'
  MAY ( sshPublicKey $ uid )
  )

スキーマをインポートします。ldapi://を変更する必要がありますか? IP /ループバックを使ってみましたが、動作しませんが、そのまま動作しているようです。

ldapadd -Y EXTERNAL -H ldapi:/// -f openssh-lpk.ldif

こちらのガイドからこれを入手>> https://blog.shichao.io/2015/04/17/setup_openldap_server_with_openssh_lpk_on_ubuntu.html

SFのこの投稿で私が何をすべきかを確認しました。

LDAPを使用したSSHキー認証

しかし、彼の指示は少し曖昧です...

"LDAPを更新してOpenSSH-LPKスキーマを含める"

まず、LDAPをスキーマで更新して、ユーザーのsshPublicKey属性を追加する必要があります。

どうやって?私は何が間違っているのですか?

ありがとう、

PS:これはコマンドを実行した私の出力です、すべてうまくいくようです、それは「重複」とさえ言います

root@ldap:~# ldapadd -Y EXTERNAL -H ldapi:/// -f openssh-lpk.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=openssh-lpk,cn=schema,cn=config"
ldap_add: Other (e.g., implementation specific) error (80)
        additional info: olcAttributeTypes: Duplicate attributeType: "1.3.6.1.4.1.24552.500.1.1.1.13"

更新:PHPLDAPADMINでスキーマを確認できますが、PosiXアカウントではありません。誰かが、/etc/phpldapadmin/templates/creation/posixAccount.xmlから属性タグを投稿できます。

enter image description here

1

これは本当にGUIの問題だったので(CLIで物事を学ぶのが最善である理由の別の例)、私の答えは画像になります。しかし、簡単に言えば、私は断食への道順を読んでいました!

"phpLDAPadminでSSH公開鍵を持つユーザーを追加する

まず、「Generic:UserAccount」テンプレートを使用してユーザーを作成します。次に、「objectClass」属性セクションに移動し、「add value」をクリックして、「ldapPublicKey」属性を選択します。送信後、ユーザー編集ページに戻り、上部の「新しい属性の追加」をクリックして「sshPublicKey」を選択し、公開鍵をテキスト領域に貼り付けて、最後に「オブジェクトの更新」をクリックします。

enter image description here

8