본문 바로가기

DevOps/Linux

[Linux] Linux SAMBA 실습 - 2

https://holywat2r.tistory.com/133

 

[DevOps] SAMBA

SAMBA # 리눅스, 유닉스, 윈도우 등 다른 계열의 운영체제 시스템끼리 자원을 공유하기 위한 서비스이다. # NFS와 비슷하지만 SAMBA는 인증 기능이 있어서 보안성이 좋다. # 윈도우의 공유 폴더를 리

holywat2r.tistory.com

https://holywat2r.tistory.com/134

 

[DevOps] Linux SAMBA 실습 - 1

SAMBA 에서 AutoFS 이용하기 https://holywat2r.tistory.com/133 [DevOps] SAMBA SAMBA # 리눅스, 유닉스, 윈도우 등 다른 계열의 운영체제 시스템끼리 자원을 공유하기 위한 서비스이다. # NFS와 비슷하지만 SAMB..

holywat2r.tistory.com

# 앞선 실습들을 참고로 진행할 예정


LINUX에서 SAMBA 서버 역할로 SAMBA 구성

# 리눅스에서 마치 자기가 윈도우이고 smb 서비스를 하는 것 처럼 폴더를 공유

 

# autofs를 stop 해준 흐 samba 서비스 install 그리고 공유할 폴더를 생성한다.

systemctl stop autofs
yum -y install samba
systemctl restart smb
systemctl enable smb
mkdir /samba

 

# 권한을 부여하고 파일을 생성한다

chmod 777 /samba
touch /samba/1
ls
1

 

# 방화벽 오픈

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

 

# samba 설정파일인 smb.conf 파일을 백업

cp /etc/samba/smb.conf /etc/samba/smb.conf.bak

 

# smb.conf 파일을 vi 편집기로 실행해보자.

vi /etc/samba/smb.conf

 

# 윈도우는 워크그룹이 동일한 시스템끼리만 smb 공유가 가능하다. 그렇지 않다면 파일 또는 프린터 공유가 불가능하다.

# smb.conf 의 내용을 밑의 내용과 같이 수정해준다

      6 [global]
      7         workgroup = SAMBA -> workgroup 으로 수정
      8         security = user
      9
     10         passdb backend = tdbsam
     11
     12         printing = cups
     13         printcap name = cups
     14         load printers = yes
     15         cups options = raw
      6 [global]
      7         workgroup = workgroup
      8         security = user
      9
     10         passdb backend = tdbsam
     11
     12         printing = cups
     13         printcap name = cups
     14         load printers = yes
     15         cups options = raw
     16

# 그리고 마지막 줄에 추가를 해준다

     39 [samba]
     40         comment = samba
     41         path = /samba
     42         read only = no
     43         valid users = test

# Comment : 주석같은 느낌으로 없어도 되는 줄이다

# path : /samba라는 디렉토리를 공유한다는 뜻이다

# read only = no : 읽기와 쓰기를 허용

# valid users =test : test라는 유저에게 삼바 디렉토리를 사용하게 하겠다는 뜻이다.

 

# 참고 : test 파라미터를 이용하게되면 다 작성하고 오타가 있는지 확인할 수 있다.

testparm /etc/samba/smb.conf

계정생성

 

# test라는 이름의 계정을 생성한다.

useradd test
passwd test
1234 1234

 

# smb 서비스를 사용하는 smb 서비스 계정을 생성한다.

 

smbpasswd -a test

# smbpasswd로 생성한 계정 정보가 해당 위치에 저장되어있다.

file /var/lib/samba/private/passdb.tdb

 

 

# smb 계정을 해당 명령어로 알 수 있다.

pdbedit --list
test:1001:

 

#설정이 끝났다면 smb 서비스를 재시작하자

systemctl restart smb

클라이언트 LINUX 세팅

# samba 서비스 설치

yum install -y samba-client samba-common cifs-utils

 

# 아래의 명령어를 입력 후 samba 서버로 지정한 서버 1에서 설정한 test의 비밀번호인 1234를 입력

smbclient -L 192.168.56.20 -U test
Enter SAMBA\root's password:
[root@client ~]# smbclient -L 192.168.56.20 -U test
Enter SAMBA\test's password:

        Sharename       Type      Comment
        ---------       ----      -------
        print$          Disk      Printer Drivers
        samba           Disk      samba // 삼바라는 이름으로 공유가 되고있다.
        IPC$            IPC       IPC Service (Samba 4.10.16)
        test            Disk      Home Directories // 테스트 계정이 공유되고
Reconnecting with SMB1 for workgroup listing.

        Server               Comment
        ---------            -------

        Workgroup            Master
        ---------            -------

# samba라는 이름으로 폴더가 공유되어 있으며

# test라는 이름의 테스트 계정이 공유가 되고 있다.

 

# 아래 명령어를 입력 후 패스워드 1234를 입력하여 접속

smbclient //192.168.56.20/samba -U test

 

# 이후 아래 명령어로 파일을 다운로드 한다.

get 1

 

vi /etc/cred
username=test
password=1234

 

# 공유 폴더를 만들고 마운트를 한 뒤 touch 2를 한다.

mkdir /samba1
mount - t cifs -o credentials=/etc/cred //192.168.56.20/samba /samba1

 

# 이후 ls 명령어를 하게되면 /samba 폴더와 /samba1 폴더가 같은 파일을 공유하고 있음을 알 수 있다.

 

'DevOps > Linux' 카테고리의 다른 글

[Linux] Failed to download metadata for repo 'appstream'  (0) 2023.08.19
[Linux] Linux DHCP 서비스  (0) 2021.08.26
[Linux] Linux SAMBA 실습 - 1  (0) 2021.08.26
[Linux] Linux SAMBA  (0) 2021.08.26
[Linux] Linux AutoFS 그리고 Map  (0) 2021.08.26