Tôi đã thấy một số câu hỏi khác ở đây liên quan đến một vấn đề tương tự - nhưng tôi chưa tìm thấy câu hỏi nào thực sự phù hợp với mình.
Mục tiêu của tôi là xác thực (chủ yếu cho SSH) tất cả các maschine Debian đối với một thư mục UCS (OpenLDAP) - chỉ trong tương lai khi người dùng là thành viên của một nhóm ldap cụ thể. Nhưng tôi hiện đang đấu tranh để làm cho nó hoạt động mà không cần tư cách thành viên nhóm.
Tôi luôn gặp lỗi:
nslcd: [7b23c6] <authc="test"> GỠ LỖI: ldap_sasl_bind("uid=test,cn=users,dc=securitywho,dc=local","***") (uri="ldap://ldap. securitywho.local") (ppolicy=yes)
nslcd: [7b23c6] <authc="test"> GỠ LỖI: kết quả ldap_parse_result(): Thông tin xác thực không hợp lệ
nslcd: [7b23c6] <authc="test"> GỠ LỖI: không thể liên kết với máy chủ LDAP ldap://ldap.securitywho.local: Thông tin xác thực không hợp lệ
nslcd: [7b23c6] <authc="test"> GỠ LỖI: ldap_unbind()
nslcd: [7b23c6] <authc="test"> uid=test,cn=users,dc=securitywho,dc=local: Thông tin xác thực không hợp lệ
nslcd: [7b23c6] <authc="test"> GỠ LỖI: myldap_search(base="cn=users,dc=securitywho,dc=local", filter="(&(objectClass=*)(uid=test))")
nslcd: [7b23c6] <authc="test"> GỠ LỖI: ldap_result(): uid=test,cn=users,dc=securitywho,dc=local
Người dùng liên kết đang hoạt động, tôi đã kiểm tra mọi thứ bằng lệnh ldapsearch - ở đó mọi thứ đều hoạt động tốt với người dùng liên kết và nếu tôi sử dụng sai mật khẩu, trình gỡ lỗi sẽ hiển thị lỗi chức năng liên kết không hoạt động.
Ldapsearch đã sử dụng - và nó đang hoạt động:
ldapsearch -x -H ldap://ldap.securitywho.local -D "uid=srv_linux,cn=users,dc=securitywho,dc=local" -b cn=users,dc=securitywho,dc=local -W
Snip từ đầu ra:
# kiểm tra, người dùng, securitywho.local
dn: uid=test,cn=users,dc=securitywho,dc=local
krb5MaxLife: 86400
krb5MaxGia hạn: 604800
uid: kiểm tra
uidSố: 2008
sn: kiểm tra
gecos: kiểm tra
tên hiển thị: kiểm tra
homeDirectory: /home/test
đăng nhậpShell: /bin/bash
mailForwardCopyToSelf: 0
cn: kiểm tra
krb5PrincipalName: [email protected]
bóng tốiThay đổi cuối cùng: 18992
sambaBadPasswordCount: 0
sambaBadPasswordThời gian: 0
sambaAcctFlags: [U ]
objectClass: shadowAccount
đối tượngClass: hàng đầu
objectClass: sambaSamAccount
objectClass: automount
đối tượngClass: univentionPWHistory
lớp đối tượng: người
đối tượngClass: krb5KDCEntry
objectClass: univentionObject
đối tượngClass: inetOrgPerson
objectClass: krb5Principal
đối tượngLớp: tổ chứcPerson
objectClass: univentionMail
objectClass: posixAccount
sambaSID: S-1-5-21-258973841-725078507-1497259816-5016
gidNumber: 5001
sambaPrimaryGroupSID: S-1-5-21-258973841-725078507-1497259816-513
univentionObjectType: người dùng/người dùng
Chỉ để xác minh rằng người kiểm tra của tôi đang hoạt động, tôi đã chạy lệnh ldapsearch với người kiểm tra - mọi thứ cũng hoạt động ở đây. Tôi đã kiểm tra rằng với một số tài khoản trong thư mục OpenLDAP, tất cả đều hoạt động ở đây nhưng không có tài khoản nào khi tôi thử nó cho SSH.
ldapsearch -x -H ldap://ldap.securitywho.local -D "uid=test,cn=users,dc=securitywho,dc=local" -b cn=users,dc=securitywho,dc=local -W
Cấu hình /etc/nslcd.conf
# /etc/nslcd.conf
# tập tin cấu hình nslcd. Xem nslcd.conf(5)
# để biết chi tiết.
# Người dùng và nhóm nslcd sẽ chạy dưới dạng.
uid nslcd
gid nslcd
# Vị trí mà (các) máy chủ LDAP có thể truy cập được.
uri ldap://ldap.securitywho.local
# Cơ sở tìm kiếm sẽ được sử dụng cho tất cả các truy vấn.
cơ sở cn=người dùng,dc=bảo mậtai,dc=cục bộ
# Phiên bản giao thức LDAP sẽ sử dụng.
#ldap_version 3
# DN để liên kết với tra cứu thông thường.
binddn uid=srv_linux,cn=users,dc=securitywho,dc=local
bindpw <MẬT KHẨU SIÊU BẢO MẬT>
# DN được sử dụng để sửa đổi mật khẩu bằng root.
#rootpwmoddn cn=admin,dc=example,dc=com
# tùy chọn SSL
#ssl tắt
#tls_reqcert không bao giờ
#tls_cacertfile /etc/ssl/certs/ca-certificates.crt
# Phạm vi tìm kiếm.
#scope phụ
bộ lọc passwd (objectClass=*)
bản đồ mật khẩu uid uid
lọc bóng (objectClass=*)
bản đồ bóng uid uid
Hoàn thành đầu ra gỡ lỗi của nslcd:
root@ipam:~# nslcd -d
nslcd: GỠ LỖI: NSS_LDAP nss-pam-ldapd 0.9.11
nslcd: GỠ LỖI: CFG: chủ đề 5
nslcd: GỠ LỖI: CFG: uid nslcd
nslcd: GỠ LỖI: CFG: gid 117
nslcd: GỠ LỖI: CFG: uri ldap://ldap.securitywho.local
nslcd: GỠ LỖI: CFG: ldap_version 3
nslcd: GỠ LỖI: CFG: binddn uid=srv_linux,cn=users,dc=securitywho,dc=local
nslcd: GỠ LỖI: CFG: bindpw ***
nslcd: GỠ LỖI: CFG: cơ sở cn=người dùng,dc=securitywho,dc=local
nslcd: GỠ LỖI: CFG: phạm vi phụ
nslcd: GỠ LỖI: CFG: deref không bao giờ
nslcd: GỠ LỖI: CFG: giới thiệu có
nslcd: GỠ LỖI: CFG: lọc bí danh (objectClass=nisMailAlias)
nslcd: GỠ LỖI: CFG: lọc ete (objectClass=ieee802Device)
nslcd: GỠ LỖI: CFG: nhóm bộ lọc (objectClass=posixGroup)
nslcd: GỠ LỖI: CFG: lọc máy chủ (objectClass=ipHost)
nslcd: GỠ LỖI: CFG: lọc nhóm mạng (objectClass=nisNetgroup)
nslcd: GỠ LỖI: CFG: lọc mạng (objectClass=ipNetwork)
nslcd: GỠ LỖI: CFG: mật khẩu bộ lọc (objectClass=*)
nslcd: GỠ LỖI: CFG: giao thức bộ lọc (objectClass=ipProtocol)
nslcd: GỠ LỖI: CFG: bộ lọc rpc (objectClass=oncRpc)
nslcd: GỠ LỖI: CFG: dịch vụ lọc (objectClass=ipService)
nslcd: GỠ LỖI: CFG: lọc bóng (objectClass=*)
nslcd: GỠ LỖI: CFG: mật khẩu người dùng nhóm bản đồ "*"
nslcd: GỠ LỖI: CFG: bản đồ mật khẩu người dùng Mật khẩu "*"
nslcd: GỠ LỖI: CFG: map passwd gecos "${gecos:-$cn}"
nslcd: GỠ LỖI: CFG: bản đồ bóng người dùng Mật khẩu "*"
nslcd: GỠ LỖI: CFG: bản đồ bóng đổ shadowLastChange "${shadowLastChange:--1}"
nslcd: GỠ LỖI: CFG: bản đồ bóng đổ shadowMin "${shadowMin:--1}"
nslcd: GỠ LỖI: CFG: bản đồ bóng đổ shadowMax "${shadowMax:--1}"
nslcd: GỠ LỖI: CFG: bản đồ bóng đổ shadowWarning "${shadowWarning:--1}"
nslcd: GỠ LỖI: CFG: bóng bản đồ shadowInactive "${shadowInactive:--1}"
nslcd: GỠ LỖI: CFG: bản đồ bóng đổ shadowExpire "${shadowExpire:--1}"
nslcd: GỠ LỖI: CFG: bản đồ bóng đổ shadowFlag "${shadowFlag:-0}"
nslcd: GỠ LỖI: CFG: pam_authc_ppolicy có
nslcd: GỠ LỖI: CFG: bind_timelimit 10
nslcd: GỠ LỖI: CFG: giới hạn thời gian 0
nslcd: GỠ LỖI: CFG: idl_timelimit 0
nslcd: GỠ LỖI: CFG: reconnect_sleeptime 1
nslcd: GỠ LỖI: CFG: reconnect_retrytime 10
nslcd: GỠ LỖI: CFG: tắt ssl
nslcd: GỠ LỖI: CFG: nhu cầu tls_reqcert
nslcd: GỠ LỖI: CFG: kích thước trang 0
nslcd: GỠ LỖI: CFG: nss_min_uid 0
nslcd: GỠ LỖI: CFG: nss_uid_offset 0
nslcd: GỠ LỖI: CFG: nss_gid_offset 0
nslcd: GỠ LỖI: CFG: nss_nested_groups không
nslcd: GỠ LỖI: CFG: nss_getgrent_skipmembers không
nslcd: GỠ LỖI: CFG: nss_disable_enumeration không
nslcd: GỠ LỖI: CFG: tên hợp lệ /^[a-z0-9._@$()]([a-z0-9._@$() \~-]*[a-z0-9._@$ ()~-])?$/i
nslcd: GỠ LỖI: CFG: chữ bỏ qua không
nslcd: GỠ LỖI: CFG: pam_authc_search CƠ SỞ
nslcd: GỠ LỖI: CFG: bộ đệm dn2uid 15m 15m
nslcd: bắt đầu từ phiên bản 0.9.11
nslcd: GỠ LỖI: initgroups("nslcd",117) đã hoàn tất
nslcd: GỠ LỖI: setgid(117) xong
nslcd: GỠ LỖI: setuid(110) đã xong
nslcd: GỠ LỖI: hủy liên kết () của /var/run/nslcd/socket không thành công (bỏ qua): Không có tệp hoặc thư mục như vậy
nslcd: chấp nhận kết nối
nslcd: [8b4567] GỠ LỖI: kết nối từ pid=896662 uid=0 gid=0
nslcd: [8b4567] <authc="test"> GỠ LỖI: nslcd_pam_authc("test","sshd","***")
nslcd: [8b4567] <authc="test"> GỠ LỖI: myldap_search(base="cn=users,dc=securitywho,dc=local", filter="(&(objectClass=*)(uid=test))")
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_initialize(ldap://ldap.securitywho.local)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_rebind_proc()
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_PROTOCOL_VERSION,3)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_DEREF,0)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_TIMELIMIT,0)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_TIMEOUT,0)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_NETWORK_TIMEOUT,0)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_REFERRALS,LDAP_OPT_ON)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_RESTART,LDAP_OPT_ON)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_simple_bind_s("uid=srv_linux,cn=users,dc=securitywho,dc=local","***") (uri="ldap://ldap. securitywho.local")
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_result(): uid=test,cn=users,dc=securitywho,dc=local
nslcd: [8b4567] <authc="test"> GỠ LỖI: myldap_search(base="uid=test,cn=users,dc=securitywho,dc=local", filter="(objectClass=*)")
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_initialize(ldap://ldap.securitywho.local)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_rebind_proc()
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_PROTOCOL_VERSION,3)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_DEREF,0)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_TIMELIMIT,0)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_TIMEOUT,0)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_NETWORK_TIMEOUT,0)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_REFERRALS,LDAP_OPT_ON)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_set_option(LDAP_OPT_RESTART,LDAP_OPT_ON)
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_sasl_bind("uid=test,cn=users,dc=securitywho,dc=local","***") (uri="ldap://ldap. securitywho.local") (ppolicy=yes)
nslcd: [8b4567] <authc="test"> GỠ LỖI: kết quả ldap_parse_result(): Thông tin xác thực không hợp lệ
nslcd: [8b4567] <authc="test"> GỠ LỖI: không thể liên kết với máy chủ LDAP ldap://ldap.securitywho.local: thông tin xác thực không hợp lệ
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_unbind()
nslcd: [8b4567] <authc="test"> uid=test,cn=users,dc=securitywho,dc=local: Thông tin xác thực không hợp lệ
nslcd: [8b4567] <authc="test"> GỠ LỖI: myldap_search(base="cn=users,dc=securitywho,dc=local", filter="(&(objectClass=*)(uid=test))")
nslcd: [8b4567] <authc="test"> GỠ LỖI: ldap_result(): uid=test,cn=users,dc=securitywho,dc=local
Những gì tôi đã thử là thử với "phạm vi tìm kiếm" trong /etc/nslcd.conf nhưng không có sự kết hợp nào làm cho nó hoạt động. Điều mà tôi hiện không thấy bất kỳ vấn đề nào về cấu hình - có ai đó gặp vấn đề tương tự hoặc có thể giúp tôi không?
Tôi đã cài đặt mọi thứ với:
apt-get cài đặt libpam-ldapd