728x90
반응형
book.naver.com/bookdb/book_detail.nhn?bid=16317946
*해당 글은 학습을 목적으로 위의 도서 내용 중 일부 내용만을 요약하여 작성한 포스팅입니다.
상세한 내용 및 전체 내용 확인을 원하신다면 도서 구매를 추천드립니다.
삼바 (SAMBA)
- GPL 기반의 자유소프트웨어로, 리눅스와 윈도우간 파일 공유에 사용할 수 있다.
- TCP/IP 기반의 NetBIOS 상에서 동작하는 SMB 프로토콜을 이용한다.
- 상대 호스트의 IP 주소 대신 컴퓨터 이름을 이용해 접속이 가능하다. (WINS)
- CIFS는 SMB를 인터넷까지 확장한 표준 프로토콜로, 유닉스와 윈도우 환경 동시 지원.
- 삼바 서버는 크게 smbd와 nmdb로 구성되어 있다.
- smbd : 삼바 프로토콜의 주요 기능을 담당하며, TCP 445번 포트 이용.
- nmdb : UDP 137, 138 포트를 이용하며, 컴퓨터를 브로드 캐스트 방식으로 검색 후 TCP 139로 접속
*삼바 서버의 구성 내용에 따라 TCP 139, 445 / UDP 137, 138 포트를 열어놓아야 한다.
삼바 서비스 설정
- /etc/samba/smb.conf 에 환경설정이 존재한다.
- Global Section과 Shared Definition 영역으로 구분되며, []를 통해 섹션을 구성한다.
- 주요 구성 요소는 주석, 섹션, 값 설정으로 나뉜다.
1) Global Section의 주요 설정 항목
- workgroup : 공유 그룹명을 지정하며, 윈도우의 작업 그룹과 같이 동작한다.
- server string : 서버에 대한 설명
- netbios name : 이름을 통해 접속할 때의 명칭
- interfaces : 여러 개의 네트워크 인터페이스를 갖고 있을 경우 어떤 것을 이용할지 설정
- hosts allow : 삼바 서버에 접근할 수 있는 호스트를 지정하여 접근 통제 역할 수행
- log file : 삼바 서버의 로그 파일 지정
- max log size : 로그 파일의 최대 크기 지정. 초과시 .old 확장자로 변환
- security : 클라이언트가 삼바 서버에 접근할 때 인증 레벨을 부여
- assdb backend : security가 user일 경우 사용하는 패스워드 저장 방식
- hide dot files = no : 리눅스의 숨김 파일이 윈도우의 OS의 파일 목록에 표시
*security 옵션은
user : os에 로그온한 패스워드 확인
share : 인증 없이 접근
server : 다른 삼바 서버에 사용자명과 패스워드를 전달하여 확인
domain : 도메인 컨트롤러에 사용자명과 패스워드를 전달하여 확인
2) Shared Definition의 주요 옵션
- [디렉터리명] : 디렉토리 명
- comment : 공유 폴더에 대한 설명
- path : 공유 디렉터리의 절대 경로
- read only = yes : 읽기전용
- writable = yes : 쓰기허용
- write list = [사용자명] : 쓰기 가능한 사용자들
- valid users = [사용자명] : 접근 가능한 사용자들
- public = no : 개인 사용자만 사용 가능
- browseable = no : 공유 리스트에 표시되지 않도록
- create mask = 값 : 접근모드
- follow symlinks = no : 심볼릭 링크를 따르지 않도록
삼바를 이용할 사용자 등록과 패스워드 설정
- adduser로 리눅스 계정을 등록한다.
- /etc/samba/smbusers 설정 파일을 이용해 리눅스 계정과 삼바 이용자명을 매핑한다.
- mbpasswd 명령을 이용해 삼바 계정과 패스워드를 설정한다.
삼바 명령어
smbpasswd
- 사용자의 생성, 삭제, 페스워드 변경, 사용자 활성 및 비활성
- smbpasswd -a 유저명 (계정 추가 및 패스워드 설정)
- x 제거 / -d 비활성화 / -e 활성화 / -n 패스워드를 제거해 없어도 로그인 가능하게.
pdbedit
- 삼바 사용자 목록 및 세부내용 조회
- -L 사용자 목록 / -v 상세정보 / -u 사용자 이름 / -a 계정 추가 및 패스워드 설정 / -r 사용자 계정 변경 / -x 사용자 계정 삭제
smbclient
- 공유 디렉터리 정보 확인 및 서버 접속
- -L : 공유 디렉터리 정보 표시 / -M : 메시지 전송 / -U 사용자 이름 지정 / -p TCP 포트 번호 지정
mount
- 삼바 공유 디렉터리를 로컬 시스템에 마운트해 마치 로컬 디렉터리인 것처럼 사용할 수 있다.
smbstatus
- 삼바의 현재 접속 정보 확인
testparm
- 삼바의 설정 정보 확인
nmblookup
- 삼바 서버의 NetBIOS 이름으로 IP 주소 조회
smbcontrol
- 삼바 데몬에 메시지를 보내 제어
NFS 서비스
- TCP/IP를 이용해 원격 호스트의 파일 시스템을 마치 로컬 호스트에 있는 것처럼 마운트해 사용할 수 있는 서비스
- RPC를 이용해 NFS 관련 명령어를 전달하기에 rpcbind 데몬이 필요하다.
NFS 서버 설정
- /etc/exports 파일을 이용해 NFS 서비스를 설정한다.
- /etc/exports 파일의 주요 옵션
- ro : 읽기 전용
- rw : 읽기 및 쓰기
- no_subtree_check : 하위 디렉터리 검사 금지
- async : 데이터 변경시 비동기식으로
- no_root_squash : root 권한 접근 허용
- root_squash : root 권한 접근 거부
- all_squash : NFS 클라이언트에서 접근하는 모든 사용자의 권한을 nobody로.
- anonuid : 특정 계정의 권한을 할당
NFS 서비스
- 접속은 mount 명령을 이용해 접속할 수 있다.
- mount -t nfs [NFS 서버] : [대상 디렉터리]
- 마찬가지로 unmount로 디렉터리를 제거할 수 있다.
- 그런데 매번 mount로 사용하기 번거로우니까, /etc/fstab 파일을 설정해 부팅시 자동으로 마운트 되도록 구성한다.
NFS 명령어
- rpcinfo : 메모리에 로딩된 RPC 기반 서비스 테이블 관리
- exportfs : NFS 서버의 export된 디렉터리 정보 즉, 공유 목록을 관리하는 명령어
- showmount : NFC 클라이언트에서 NFS 서버의 익스포트된 정보를 확인하는 명령어
- nfsstat : NFS 및 RPC 연결에 대한 통계 정보 표시
FTP
- TCP/IP를 이용해 파일을 전송하기 위한 프로토콜이다.
- 기본적으로 등록된 사용자만 접속할 수 있으나, 익명의 사용자를 지원하는 경우도 있다.
- CentOS 등 리눅스에서 기본 제공하는 vsftpd가 대표적이다.
- FTP는 능동 모드와 수동 모드가 있다.
- 능동 모드 : 클라이언트가 데이터 포트로 사용할 포트 넘버를 서버에게 알려주고 서버가 접속
- 수동 모드 : 서버가 데이터 포트로 사용할 포트 넘버를 클라이언트에게 알려주고 클라이언트가 접속
vsftpd 관련 파일
/etc/vsftpd/vsftpd.conf | 주 설정 파일 | /etc/rc.d/init.d/vsftpd | vsftpd 데몬 실행 |
/etc/pam.d/vsftpd | PAM 설정 파일 | /etc/vsftpd/ftpusers | FTP 서비스에 접근할 수 없는 사용자 지정 |
/etc/vsftpd/user_list | userlist_enable=YES 여야 사용 FTP 서비스에 접근할 수 없는 사용자들 NO이면 사용 가능 |
FTP 서버 설정
- /etc/vsftpd/vsftpd.conf 파일을 이용하여 환경을 설정한다.
anonymous_enable = YES | 익명 사용자 접근 허용 |
anon_upload_enable = YES | 익명 사용자 업로드 허용 |
local_enable = YES | 로컬 계정 사용자 접근 허용 |
write_enable = YES | FTP 쓰기 명령 허용 |
local_umask=022 | 기본 umask 값을 022로 설정 |
chroot_local_user=YES | 접속한 사용자의 홈 디렉토리를 최상위 디렉토리가 되도록 |
chroot_list_enable=YES | 홈 디렉토리의 상위 디렉토리로 이동 가능한 사용자 목록 사용 |
chroot_list_file=파일명 | 상위 디렉터리로 이동할 수 있는 사용자 목록을 담은 파일 |
chown_uploads=YES | 익명 사용자가 업로드한 파일의 소유권 변경 |
chown_username=계정명 | 익명 사용자가 업로드한 파일의 소유권 설정 |
userlist_enable=YES | PAM 인중에 사용될 설정 파일 이름 |
tcp_wrapper=YES | 접근 제어 수행 |
session_support=YES | wtmp에 로그를 남겨 last 명령으로 접속 여부 확인 가능 |
dirmessage_enable=YES | 디렉토리 이동시 해당 디렉토리의 메시지 표시 |
ftpd_banner=메시지 | FTP 접속 시 표시될 환영 메시지 |
xferlog_enable=YES | FTP 관련 로그 |
xferlog_file=경로명 | 로그 파일 경로 지정 |
xferlog_std_format=YES | 로그 파일이 표준 포멧을 사용하도록 |
listen_port=포트번호 | vsftpd의 접속 포트 지정 |
ftp_data_port=포트번호 | 데이터 전송에 사용할 포트 지정 |
listen=YES | 스탠드어론 모드로 동작 시 설정 |
idle_session_timeout=초 | idle 상태에서 접속을 유지할 수 있는 최대 시간 |
data_connection_timeout=초 | Data connection을 끊기 전까지 대기시간 설정 |
max_clients=최대값 | 접속할 수 있는 최대 클라이언트 수 |
max_per_ip=최대값 | 한 아이피당 접속 가능한 최대 허용 건수 |
1. 다음 중 삼바에 대한 설명으로 틀린 것은?
1) 삼바 서버를 서비스로 운용하기 위해 전체 설정과 공유 정의로 나눌 수 있다.
2) 환경 설정 시 #는 주석을 가리킨다.
3) 삼바 서버를 작동하기 위해서는 삼바 데몬을 띄워야 한다.
4) 환경 설정시 ; 는 문장의 끝을 의미한다.
4
2. 다음 중 SMB의 기능이 아닌 것은?
1) 리눅스 파티션과 윈도우의 공유
2) 윈도우 파티션과 리눅스의 공요
3) 리눅스의 프린터와 윈도우의 공유
4) 윈도우의 모니터와 리눅스의 공유
4
3. proftpd 설정 파일인 proftpd.conf에서 MaxInstances라는 지시자가 사용되는 용도는?
1) inetd 모드로 실행할 때 생성되는 최대 프로세스 수
2) Standalone 모드로 실행할 때 생성되는 최대 자식 프로세스 수
3) 서버에 접속할 수 있는 최대 클라이언트 수
4) 서버에 전송할 수 있는 최대 대역폭 크기
2
4. NFS 서버의 설정 파일인 /etc/exports의 옵션 중 클라이언트의 root 사용자를 서버에서의 root 사용자로 매핑할 수 있는 옵션은?
no_root_squash
5. 다음 중 삼바 서버와 관련 있는 프로토콜들은?
1) SMB, CIFS
2) RPC, SMB
3) RPC, CIFS
4) SMB, IPC
1
6. 다음 설명의 NFS 서버 설정 옵션은?
NFS 클라이언트에서 접근하는 root 사용자를 NFS 서버의 root 사용자로 인정한다.
1) secure
2) all_squash
3) root_squash
4) no_root_squash
4
7. 192.168.111.222 IP 주소를 사용하는 윈도 시스템의 공유 폴더가 lin일 때, 해당 폴더에 접근하는 명령어는?
smbclient \\\\192.168.111.222\\lin
728x90
반응형
'자격증 > 리눅스 마스터 1급' 카테고리의 다른 글
리눅스마스터_1급_3과목_DNS 관련 서비스 (0) | 2021.02.12 |
---|---|
리눅스마스터_1급_3과목_메일 관련 서비스 (0) | 2021.02.12 |
리눅스마스터_1급_3과목_인증 관련 서비스 (0) | 2021.02.12 |
리눅스마스터_1급_3과목_웹 관련 서비스 (0) | 2021.02.12 |
리눅스마스터_1급_2과목_시스템 백업 (0) | 2021.02.11 |