삼바+OPEnldap 파일 공유 서버 구축 문제
주:
yum 소스 와 네트워크 설정 생략.
yum -y install samba openldap-servers openldap-clients smbldap-tools nss-pam-ldapd간단 한 서비스 설정 만 진행 합 니 다.데이터베이스 설정 은 smbldap-tools 로 설정 합 니 다.OPEnldap 을 모 르 면 이 글 을 보 세 요.
OPEnldap 의 모든 설정 을 비우 고 다시 설정 합 니 다.
#       ,      
mkdir /root/back
tar -Jcvf /root/back/slapd.config-`date '+(%Y.%m.%d_%H:%M:%S)'`.tar.xz /etc/openldap/slapd.d/
tar -Jcvf /root/back/slapd.data-`date '+(%Y.%m.%d_%H:%M:%S)'`.tar.xz /var/lib/ldap/
#          
rm -rf /etc/openldap/slapd.d/*
rm -rf /var/lib/ldap/*
#     samba schema  
cp /usr/share/doc/samba-4.9.1/LDAP/samba.ldif /etc/openldap/schema//usr/share/openldap-servers/slapd.ldif에서 복사 되 어 다음 과 같이 수정 되 었 습 니 다.주로 baseDN(suffix),OPENLDAPTLS,olcRootPW(비밀 번 호 는 slappasswd 로 생 성 되 었 으 며,본 논문 의 비밀 번 호 는 123456)과 include 입 니 다.
# file: /tmp/slapd.ldif
dn: cn=config
objectClass: olcGlobal
cn: config
olcArgsFile: /var/run/openldap/slapd.args
olcPidFile: /var/run/openldap/slapd.pid
dn: cn=schema,cn=config
objectClass: olcSchemaConfig
cn: schema
include: file:///etc/openldap/schema/core.ldif
include: file:///etc/openldap/schema/cosine.ldif
include: file:///etc/openldap/schema/nis.ldif
include: file:///etc/openldap/schema/inetorgperson.ldif
include: file:///etc/openldap/schema/samba.ldif
dn: olcDatabase=frontend,cn=config
objectClass: olcDatabaseConfig
objectClass: olcFrontendConfig
olcDatabase: frontend
dn: olcDatabase=config,cn=config
objectClass: olcDatabaseConfig
olcDatabase: config
olcAccess: to * 
 by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage 
 by * none
dn: olcDatabase=monitor,cn=config
objectClass: olcDatabaseConfig
olcDatabase: monitor
olcAccess: to * 
 by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read 
 by dn.base="cn=Manager,dc=black,dc=com" read 
 by * none
dn: olcDatabase=hdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcHdbConfig
olcDatabase: hdb
olcSuffix: dc=black,dc=com
olcRootDN: cn=Manager,dc=black,dc=com
olcRootPW: {SSHA}l1vBI/HOMKLEiQZgcm3Co+hFQI68rH1Q
olcDbDirectory: /var/lib/ldap
olcDbIndex: objectClass eq,pres
olcDbIndex: ou,cn,mail,surname,givenname eq,pres,sub,uid
slapadd -F "/etc/openldap/slapd.d/" -b "cn=config" -l /tmp/slapd.ldif
#              root ,     openldap
chown -R ldap:ldap /etc/openldap/slapd.d/*
#          
systemctl start slapdClosing DB...
주:OPEnldap 의 서비스 설정 부분 만 설정 되 어 있 고 OPEnldap 의 데이터 베 이 스 는 설정 되 어 있 지 않 습 니 다.다시 한 번 강조 하 겠 습 니 다.
삼바 설정
삼바 와 OPEnldap 의 사용 을 테스트 하기 위해 서 입 니 다.너무 복잡 한 파일 공유 설정 은 하지 않 고 한 사용자 의 집 디 렉 터 리 만 공유 합 니 다.테스트 만 가능 합 니 다.
# file: /etc/samba/smb.conf
[global]
 workgroup = MYGROUP #        。
 server string = Samba Server Version %v
 log file = /var/log/samba/log #   
 security = user #        User
 passdb backend = ldapsam:ldap://127.0.0.1 #   passdb         ldapsam
 ldap suffix = dc=black,dc=com #   ldap  suffix
 ldap user suffix = ou=People #       suffix    ou=People        suffix  。
 ldap group suffix = ou=Group #   ,       。
 ldap admin dn = cn=Manager,dc=black,dc=com #     ldap          
 ldap ssl = no #      SSL  。
 load printers = no #           。
[homes]
 comment = Home Directories
 browseable = no
 writable = yes
 create mask = 0600
 directory mask = 700
smbpasswd -w 123456 #        LDAP        ,!!!    ,      smb  。
systemctl start nmb
systemctl start smb여기 서 smbldap-tools 를 사용 하여 삼바 서비스 에 필요 한 데이터 정 보 를 신속하게 완성 하 는 동시에 smblda-tools 를 통 해 사용자 세그먼트 관 리 를 진행 합 니 다.그러나 smbldap-tools 는 로 컬 사용자 가 같은 UID 나 GID 가 있 는 지 에 관 계 없 이 충돌 할 수 있 으 므 로 주의해 야 한 다 는 단점 이 있 습 니 다.
smbldap 는/etc/samba/smb.conf 에서 일부 정 보 를 읽 기 때문에 삼바 를 설정 하고 smbldap-tools 서 비 스 를 설정 해 야 합 니 다.
smbldap-config #    smbldap-tools    ,    smbldap-conifg     。 
 아래 설정 과정 을 생략 하고 모 르 는 기본 값 으로 하면 됩 니 다.
smbldap-populate #       OPENldap    。 
 다음 테스트 에 사용 할 사용 자 를 다시 만 듭 니 다.
smbldap-useradd -a -m User1 #     User2
# -a:           Windows,  samba         。
# -m:            。
smbldap-passwd User1 #           이렇게 하면 OPEnldap 의 데이터 베 이 스 를 초기 화하 면 OPEnldap 의 내용 을 조회 할 수 있 습 니 다.아래 그림 은
smbldap-populate만 든 내용 입 니 다.아래 그림 은 apache Directory Studio 입 니 다.관심 이 있 으 면 을 연구 해 보 세 요. 
 그림 에서 UID=root 와 nobody 의 사용 자 를 볼 수 있 습 니 다.저 는 이 특수 사용 자 를 서버 에 로그 인하 고 싶 지 않 기 때문에 아래 설정 에서 fliter 를 통 해 이 두 사용 자 를 걸 러 냅 니 다.
NSS 설정
이 NSS 설정 은 주로 설정 이 필요 합 니 다.NSS 는 LDAP 의 요청 을 nslcd 에 전송 하고 nslcd 에서 OPEnldap 의 사용자 정 보 를 조회 합 니 다.
우선 NSS 를 설정 합 니 다.passwd 세그먼트 와 group 세그먼트 의 ldap 인증 만 추가 하면 됩 니 다.
# file: /etc/nsswitch.conf
passwd: files ldap
shadow: files
group: files ldap
hosts: files dns myhostname
bootparams: nisplus [NOTFOUND=return] files
ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files sss
netgroup: nisplus sss
publickey: nisplus
automount: files nisplus sss
aliases: files nisplus
# file:/etc/nslcd.conf
uid nslcd
gid ldap
uri ldap://127.0.0.1/ # ldap URL  
base dc=black,dc=com # base dn   
binddn cn=Manager,dc=black,dc=com #        
bindpw 123456 #     
ssl no  #       SSL     。
filter passwd (&(objectClass=posixAccount)(uidNumber>=1000)) #    passwd      。
filter group (&(objectClass=posixGroup)(gidNumber>=500)) #   ,     group
Copy
chmod 600 /etc/nslcd.conf #       ,    ,        。
systemctl start nslcd #    nslcd   。
getent passwd User1위 에서 보 듯 이 저희 가 설정 한 NSS 와 OPEnldap 서비스 가 이미 효력 이 발생 했 습 니 다.다음 에 삼바 를 계속 설정 해서 사용 할 수 있 도록 하 겠 습 니 다.
삼바 권한 설정
자세히 보면 사용자 의 홈 디 렉 터 리 위 치 를
/var/smb위치 에 저장 한 것 을 알 수 있 습 니 다.주로 시스템 의 사용자 와 헷 갈 리 지 않 기 위해 서 입 니 다.또한 이렇게 하면 SELinux 를 통 해 삼바 의 접근 금지/home경로 에 있 는 자원 을 격 리 할 수 있 습 니 다.자세 한 내용 은 아래 작업 을 보십시오.
#      smbldap-useradd   ,        home   ,
#         SELinux       。
semanage fcontext -a -t samba_share_t '/var/smb(/.*)?' #   /var/smb      type,     samba      type,SELinux         type  
#     samba      /home       samba_enable_home_dirs    bool  。
#              samba_share_t    type   ,          bool  ,     samba      /var/smb   samba       。
restorecon -R /var/smb/ #         /var/smb     SELinux type     。
Copy
#         samba    
smbclient -L //127.0.0.1/ -U User1 
 여기에서 도 볼 수 있 습 니 다.User 1 사용 자 는 공유 디 렉 터 리 에 로그 인하 여 조회 할 수 있 습 니 다.
그러면 우 리 는 여기에 직접 로그 인하 여 파일 을 올 려 테스트 를 합 니 다.
 
 OK,그러면 삼바 의 파일 공유 가 완 료 됩 니 다.
 
 총결산
위 에서 말 한 것 은 소 편 이 여러분 에 게 소개 한 삼바+OPEnldap 파일 공유 서버 구축 문 제 를 상세 하 게 설명 하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 저 에 게 메 시 지 를 남 겨 주세요.소 편 은 제때에 답 해 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Rsat İle Samba Üzerindeki Windows GPO'larının YönetimiLinuxa kurulan bir Samba DC(Etki alanı yöneticisi) yi yönetmek için 터미널(komut ekranı) kullanmak zorunda değiliz. Domaine...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.