
ADアカウント(Kerberos v5、SSSD、Samba、NTP)を使用してLinuxにログインするために必要なすべてを設定しましたが、Puttyを使用してサーバーに接続したときに起動されるデフォルトのシェルは/bin/sh
。
私はMac Mini PowerPCを使用しており、SSSDバージョン1.13.4がインストールされています。
/etc/sssd/sssd.conf
文書:
[sssd]
services = nss, pam
config_file_version = 2
domains = <FQDN>
reconnection_retries = 3
debug_level = 5
[nss]
default_shell = /bin/bash
debug_level = 5
[pam]
debug_level = 5
[domain/<FQDN>]
id_provider = ad
access_provider = ad
default_shell = /bin/bash
override_homedir = /home/%u
debug_level = 5
このエラーがあります。
[e]0bash
daniel.luna@devsrv2:~$ exit
exit
[e]0
そして
login as: daniel.luna
daniel.luna<FQDN>'s password:
...
Last login: Thu May 17 11:35:51 2018 from
-sh: 24: u@h:: not found
[e]0
bashがデフォルトで実行されるようにすべてを設定する必要があります。助けが必要ですか?
答え1
ユーザーのLDAP属性はloginShell
何ですか? SSSDのLDAP / ADバックエンドを使用すると、これは通常ユーザーのシェルを決定します。
いくつかの異なるツールを使用してユーザーのシェルを認証できます。
を使用すると、シェルgetent passwd
は7番目(最後)のフィールドになります。
[hendrenj@pitserver ~]$ getent passwd hendrenj
hendrenj:*:152370:829:hendrenj:/home/hendrenj:/bin/bash
またはを使用してsssctl user-checks
grepを使用してシェルを見つけることもできます。
[hendrenj@pitserver ~]$ sudo sssctl user-checks hendrenj 2>&1 | grep shell
- shell: /bin/bash
報告されたシェルでない場合は、/bin/bash
LDAP側でシェル属性を更新する必要があります。報告されたシェルがある場合、/bin/bash
問題はローカルにあります。あなたの設定エラーが主張したものと異なる、ユーザーのファイルが異なるシェルをsssd.conf
実行している、または他のローカル問題があります。/bin/bash
.bashrc