삼바+OPEnldap 파일 공유 서버 구축 문제
주:
yum 소스 와 네트워크 설정 생략.
yum -y install samba openldap-servers openldap-clients smbldap-tools nss-pam-ldapd
OPEnldap 서비스 설정간단 한 서비스 설정 만 진행 합 니 다.데이터베이스 설정 은 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 slapd
_#################### 100.00% eta none elapsed none fast!Closing 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 설정여기 서 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
그리고 nslcd 를 설정 합 니 다.nslcd 는 daemon 형식 으로 실행 되 며,주요 설정 후 다시 시작 합 니 다.
# 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 。
NSS 설정 을 사용 할 수 있 는 지 테스트 합 니 다.
getent passwd User1
User1:*:1001:513:System User:/var/smb/User1:/bin/bash위 에서 보 듯 이 저희 가 설정 한 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에 따라 라이센스가 부여됩니다.