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
shell이 일곱 번째(마지막) 필드가 됩니다.
[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