SLES 11.4를 실행 중인데 사용자가 smbpasswd
. smbpasswd
사용자 계정에 대해 루트로 작업하면 작동합니다. 일단 smbpasswd
설정되면 Samba 서버는 제대로 작동하고 사용자는 필요한 모든 것에 액세스하거나 액세스하지 않을 수 있습니다. 특히 에 기록하는 레벨 10으로 로깅을 켜면서 /var/log/samba.log
다음을 발견했습니다.
gid_to_sid: winbind failed to find a sid for gid 100
LEGACY: gid 100 -> sid S-1-22-2-100
Forcing Primary Group to 'Domain Users' for ron
이 로그 파일은 Linux에 일반 사용자로 로그인한 상태에서 명령 프롬프트에서 다음을 수행하기 위해 생성되었습니다. 성공처럼 보이지만 smbpasswd는 변경되지 않습니다.
ron/Desktop> smbpasswd
Old SMB password:
New SMB password:
Retype new SMB password:
cli_negprot: SMB signing is mandatory and the server doesn't support it.
machine 127.0.0.1 rejected the negotiate protocol. Error was : NT_STATUS_ACCESS_DENIED.
Password changed for user ron
ron/Desktop>
문제가 무엇인지, 해결 방법을 아는 사람이 있나요? 하나의 폴더를 공유하고 모든 삼바 비밀번호를 로컬에서 수행하여 가능한 한 간단하게 삼바 서버를 실행하려고 합니다.
답변1
따라서 테스트하는 경우 루트가 아닌 사용자로서 smbpasswd를 사용할 때 비밀번호 길이가 5자 이상이어야 하는 것 같습니다. 4개를 사용했을 때는 실패했지만 5개 이상은 작동했습니다. 루트로서 smbpasswd <username>
모든 문자 길이를 성공적으로 수행할 수 있습니다. 그러니 명심하세요.
내 /etc/samba/smb.conf 파일은 이것이며 문제가 해결되었습니다. 특히 아무런 영향 server signing = auto
이 obey pam restrictions
없는 것 같습니다. 모든 비밀번호 요구 사항(아래 그림 참조)을 여러 번 변경하고 smb 및 nmb를 다시 시작하여 확인했는데 다음과 같습니다. 모든 것을 작동하게 만드는 것은server signing = auto
[global]
workgroup = abc.com
passdb backend = tdbsam
map to guest = Bad User
usershare allow guests = No
add machine script = /usr/sbin/useradd -c Machine -d /var/lib/nobody -s /bin/false %m$
domain master = No
security = user
wins support = No
log file = /var/log/samba.log
log level = 10
# client signing = auto
server signing = auto {need this to allow users to use smbpasswd successfully}
# obey pam restrictions = Yes
# pam password change = Yes