삼바 (SAMBA), 윈도우와 리눅스를 서버로 설정하여 실습

sso·2025년 4월 24일
0

리눅스 서버

목록 보기
31/40

삼바 (SAMBA)

리눅스와 윈도우간의 데이터 및 하드웨어를 공유할 수 있도록 하는 프로토콜

SMB 프로토콜은 유닉스, 윈도우 환경을 동시에 지원하는 CIFS(Common Internet File System)으로 확장되었음

삼바 설치

dnf -y install samba*

삼바에는 2가지 대몬이 사용됨

smbd : 사용자 인증 담당
nmbd : 컴퓨터명, IP 주소 연결 등의 역할 담당

systemctl start smb nmb

일반 사용자 접근과 관련된 삼바 서버는 SELinux에 의해 차단되어 있으므로 차단 해야해야함
setenforece 0

윈도우를 SAMBA 서버로서 사용할 경우

  1. 원하는 경로에 디렉터리 생성 후 공유

폴더 > 속성 > 공유 > 공유 > Everyone 추가 > 공유

컴퓨터 관리 > 공유 폴더 > 공유

연결된 클라이언트 수, 공유하고 있는 폴더 등을 확인할 수 있음

리눅스에서 윈도우에 접속할 때 사용할 계정이 필요하기에 해당 계정 생성

powershell 관리자 권한으로 실행

net user root 1234 /add ➡ root 라는 사용자 생성 후 비밀번호 1234 적용

만약 지우고싶다면
net user root 1234 /delete

내가 만든 사용자는 컴퓨터 관리 > 로컬 사용자 및 그룹 > 사용자에 추가된것을 확인

dnf -y install samba-client

smbclient -L 10.0.2.141 (삼바 서버 IP, 삼바 서버는 윈도우기 때문에 윈도우 IP 입력)
(입력 후 윈도우에 만든 root 계정 암호 입력)

mkdir /smbclient

(윈도우로 접속하기 때문에 슬래쉬 2개를 사용 //)
mount -t cifs //10.0.2.141/snb4gl /smbclient

윈도우에서 만든 폴더와 리눅스에서 만든 폴더가 정상적으로 생성이 되는것을 확인

리눅스를 SAMBA 서버로 사용할 경우

mkdir /myshare ➡ 공유 할 디렉터리 생성

chmod 777 /myshare

사용할 수 있는 사람이 root 밖에 없기에 other에게 권한 추가
소유자가 root 이기 때문에 nobody.nobody로 줘야함

삼바 환경 설정 경로

vi /etc/samba/smb.conf

리눅스 서버의 문자 인코딩 UTF-8로 설정 (한국어 깨짐 방지)
unix charset = UTF-8

security = user ➡ 접속 시 사용자명, 비밀번호 요구
map to guest = Bad User ➡ 적절하지 못한 유저(없는 유저)가 들어올 경우 guest 유저로 접속 가능 처리

[myshare]
path = /myshare
writable = yes
guest ok = yes
geust only = yes
force create mode = 777
force directory mode = 777

systemctl restart smb nmb

firewall-cmd --add-service=samba --permanent
firewall-cmd --reload

permanent 옵션을 사용하지 않았을 경우
현재 실행중인 방화벽을 모두 permanent로 설정하는 명령어

firewall-cmd --runtime-to-permanent

내컴퓨터 > 네트워크 드라이브 추가

(윈도우에서 리눅스를 들어가는 것이므로 역슬래쉬 2개 사용 \)
\192.168.111.100\myshare

문제

상대방과 Samba 서버를 연결하시오.

Server B를 초기화 한 후, Samba 서버를 구축하시오.
이후 자신의 Host OS인 윈도우를 클라이언트 삼아 상대방이 구축한 상대 Server B의 Samba 서버에 윈도우클라이언트를 접속시키시오.

이후 파일 공유가 이루어지는지 테스트하시오.

dnf -y install samba*
systemctl start smb nmb

mkdir /share
chmod 777 /share

vi /etc/samba/smb.conf
unix charset = UTF-8
map to guest = Bad User

[share]
path = /share
writable = yes
guest ok = yes
guest only = yes
force create mode = 777
force directory mode = 777

systemctl restart smb nmb

firewall-cmd --add-service=samba --permanent
firewall-cmd --reload

profile
오늘도 하나씩 해결해 나가자!

0개의 댓글