Linux/centos에서 삼바 서버를 구성하고 관리하는 방법은 무엇입니까?
1 삼바 서비스 관련 지식
samba
서버를 사용하면 사용자는 이기종 네트워크 운영 체제 간에 파일 시스템을 공유할 수 있습니다.samba
서버는Windows
환경에서 사용자 디렉토리를 공유하기Linux
위한 도구를 제공합니다.linux
에 설치한 후 액세스하려면 로그인만 하면 됩니다samba
.windows
1.1 SMB 프로토콜
Windows
시스템은TCP/IP
기본 프로토콜을 사용하여NetBOIS
요청을 보내고NetBOIS
상위 계층 에서는SMB(server message block)
프로토콜을 고급 인터페이스로 사용하여windows
네트워크 환경에서 파일 및 인쇄와 같은 리소스 공유를 실현합니다.SMB
사용되는NetBOIS
응용 프로그램 인터페이스는API
일반적으로 포트입니다139,445
.- 이는 프로토콜 확장을 허용하는 개방형 프로토콜입니다.
- 대략 65개의 최상위 작업이 있으며 각 작업에는 120개 이상의 기능이 있습니다.
CIFS(common Internet File system)
SMB
이는 프로토콜 의 향상된 버전입니다 .
1.2 삼바의 작동 원리
1.2.1 관련 프로세스
samba
서버는 두 개의 데몬 프로세스smbd
로 구성되어 있으며nmbd
, 각 프로세스는 독립적으로 시작하거나/etc/rc.d/init.d/smb
시작을 사용하여 시작할 수 있습니다.
smbd : Windows 사용자를 위한 파일 및 인쇄 공유 서비스를 제공합니다.
nmbd : NetBIOS 이름 확인을 수행하고 Windows SMB 요청 정보의 NetBIOS 이름을 Linux의 IP 주소에 매핑합니다.
1.2.2 삼바 작업 흐름
1.2.3 삼바 기능
- 파일 및 프린터 공유;
- 인증 및 권한 설정
- 이름 확인;
- 서비스를 찾아보세요.
2개의 삼바 서버 설치
2.1 CD-ROM 드라이브를 이용한 설치
다음을 centos
수행하십시오 .
linux
시스템 설치 CD를 CD-ROM 드라이브에 넣고 다음을 만듭니다.
mkdir /mnt/cdrom
- 다음 디렉터리에 읽기-쓰기 모드로 CD를 마운트합니다.
mount /dev/cdrom /mnt/cdrom
- yum 소스 파일을 만드세요
/etc/yum.repos.d/cdrom.repo
:
[cdrom]
name = cdrom
baseurl = file:///mnt/cdrom
gpgcheck = 0
enabled = 1
2.2 CD 매핑 파일 사용
다음을 수행합니다 centos
(저는 이 방법을 사용합니다).
-
광학 드라이브가 없으면 운영 체제의 매핑 파일을 사용하면 됩니다.
-
예를 들어 매핑 파일을 맨 위 맨 아래
.iso
에 업로드합니다 .linux
root
CentOS-7-x86_64-Everything-2003.iso
-
새 디렉터리를 만들고
iso
이 디렉터리에 매핑 파일을 걸어 놓습니다.
mkdir /mnt/iso
mount -o loop /root/CentOS-7-x86_64-Everything-2003.iso /mnt/iso
- 냠
源
파일을 만드세요/etc/yum.repos.d/iso.repo
:
[iso]
name = iso
baseurl = file:///mnt/iso
gpgcheck = 0
enabled = 1
- 다음 이름을 사용하여 설치하십시오.
yum -y install samba
- 다음 명령을 사용하여 설치 상태를 확인할 수 있습니다.
rpm -qa | grep samba
3 삼바 서비스 시작 및 중지
samba
서비스를 시작합니다 :
systemctl start smb.service
- 삼바 서비스를 중지합니다:
systemctl stop smb.service
samba
서비스를 다시 시작합니다 .
systemctl restart smb.service
samba
서비스 새로고침 :
systemctl reload smb.service
samba
부팅 시 자동 시작 서비스:
systemctl enable smb.service
# 查看是否开机自启
systemctl list-unit-files | grep smb
samba
부팅 시 자동 시작 서비스를 취소합니다 .
systemctl disable smb.service
samba
서비스 상태 확인 :
systemctl status smb.service
4 삼바 서버 구성
4.1 삼바 기본 구성 파일 smb.conf
4.1.1 삼바 구성 소개
- 구성 파일은
/etc/samba
다음과 같습니다 .
- 구성 정보는 다음과 같습니다.
- 설명하다:
① 시작 부분에서는 주로 삼바의 기능을 소개합니다.
② #: 설명용,
③;: 형식의 예,
4.1.2 전역변수
global
주로 전역 변수입니다.
[global]
workgroup = SAMBA # 设置samba的工作组
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
- 부분 필드 분석:
필드 | 방법 | 설명하다 |
---|---|---|
workgroup |
작업그룹=<작업그룹> | samba server 작업 그룹 설정 |
server string |
서버 문자열=<설명> | samba server 댓글 설정 |
host allow |
호스트 허용= <IP> 주소 |
samba server 연결할 수 있는 컴퓨터를 제한하세요 . |
security |
보안=<수준> | 액세스에 대한 보안 수준 설정 |
password level |
비밀번호 수준=<숫자> | 비밀번호 길이 |
username level |
사용자 이름 레벨=<자릿수> | 사용자 이름 길이 |
encrypt passwords |
비밀번호 암호화=<예/아니요> | samba 비밀번호 암호화 여부 설정 |
smd password file |
smd 비밀번호 파일=<비밀번호 파일> | samba 비밀번호 파일 설정 |
4.1.3 공유 서비스
- 공유 부분에는 [
home
], [printer
], [사용자 정의 공유 이름]이 포함됩니다. samba
[home
], [printer
] 공유는 기본적으로 활성화되어 있습니다.- 다음 형식으로 공유 디렉터리를 직접 만들 수 있습니다.
[共享名]
字段 = 设置值
......
- 필드 설명:
필드 | 설명하다 |
---|---|
comment |
노트 |
path |
공유 리소스의 전체 경로 |
browseable |
리소스 탐색 시 공유 디렉터리 표시 여부 설정 |
public |
익명 접근 허용 여부 설정 |
read only |
읽기 전용 모드로 공유 리소스에 액세스할지 여부 |
writeable |
사용자가 작업을 쓸 수 있도록 허용할지 여부 |
vaild users |
특정 사용자 설정 |
write list |
쓰기가 허용된 사용자 또는 그룹 |
4.2 Samba 서비스 로그 및 계정
4.2.1 삼바 서비스 로그 파일
- 목차:
/var/log/samba
- 로그 파일의 저장 경로와 용량은 다음 파일을 수정하여 설정할 수 있습니다.
# smb.conf
log file = /var/log/samba/log.%m
max log size = 50
4.2.2 삼바 서비스 비밀번호 파일
- 목차:
/etc/samba/smbpasswd
samba
계정을 추가하는 명령은 다음과 같습니다.
smbpasswd -a 用户名
5 삼바 클라이언트 구성
5.1 리눅스에서 삼바 서버 테스트
smbclient
주문하다:
smbclient -L 目标IP地址或主机名 -U 登陆用户名%密码
mount
주문하다:
mount -t cifs //目标IP地址或主机名/共享目录名 挂载点 -o username=用户名,password=密码
5.2 Windows에서 삼바 서버 테스트
- 시작-실행,
linux
공유 디렉토리를 입력하십시오. - 파일 브라우저에 입력된
linux
공유 디렉터리를 열 수도 있습니다 .
6 실제 사례
6.1 예시 설명
공유 파일 서버, 파일 이름은 workgroup, 디렉터리는 /mnt/public, 공유 이름은 public이며 누구나 질문할 수 있습니다.
6.2 구현 프로세스
- 새 디렉터리를 만듭니다.
mkdir /mnt/public
touch /mnt/public/test1.txt /mnt/public/test2.txt
smb.conf
파일 수정 :
[public]
comment = Public
path = /mnt/public
public = yes
browseable = yes
guest ok = yes
- 방화벽
samba
서비스가 통과할 수 있도록 그래픽 인터페이스를 엽니다(응용 프로그램-기타-방화벽). - 설정은
Selinux
다음과 같습니다Permissive
.
getenforce
setenforce 0
getenforce
- 방문 경로
linux
:
smbclient //192.168.0.190/public -U root
- 계정
root
에 조인을 추가합니다 .samba
smbpasswd -a root
- 액세스를 통해 액세스할 수 없는 경우 파일 공유 지원을
windows
활성화해야 합니다 .SMB