------------------------------------------ 파일시스템 -------------------------------------------------------
xfs - 64비트 고성능 저널링 파일 시스템
ext - 초기 리눅스에서 사용하였던 종류, 현재는 사용하지 않음
ext2 - 현재도 사용하며, 긴파일시스템 이름을 지원하는것이 특징
ext3 - 저널링 파일시스템, ext2보다 파일시스템의 복수/보안기능을 크게향상되었고
ext4 - 16TB까지만 지원하던 ext3과 달리 더큰 용량을 지원하며, 삭제된 파일 복구, 파일 시스템 속
도가 훨씬 빨라진 파일시스템
iso9660 - DVD/CD-ROM을 위한 표준 파일시스템으로 읽기만 가능
nfs - 원격서버에서 파일시스템 마운트할때 사용하는 시스템(Network File System)
swap - 스왑파일시스템, 스왑공간으로 사용되는 파일시스템
ufs - Unix system에서 표준 파일시스템으로 사용(Unix File System)
vfat - 윈도우95/98등등 ntfs를 지원하기위한 파일시스템
msdos - MS-DOS파티션을 사용하기위한 파일시스템
ntfs - 윈도우NT/2000의 nfts를 지원하기위한 파일시스템
hfs - MAC컴퓨터의 hfs를 지원하기위한 파일시스템
hpfs - hpfs를 지원하기위한 파일시스템
sysv - Unix system v를 지원하기위한 파일시스템
ramdisk - RAM을 지원하기위한 파일시스템
확장된 파일 시스템
- nfs , samba ( cisf )
NFS ( Network File System )
1. Server ( ServerA )
1) 설치
# yum -y install nfs-utils.x86_64
2) 설정
- /etc/exports <------------ 설정파일
- man exports <----------- 설정파일 설명 페이지
# vi /etc/exports <--------- 설정파일을 열어준다
< 공유할 디렉터리_path> <access_allow_host/network>(option)
ex) /raid/level01<---- 요걸 *(모든호스트에게)(sync)
--------------- access_allow_host/network ---------------------
- 접속을 허용할 IP 지정
* : 모든 IP
100.100.100.110 : 해당 IP만 허용
100.100.100.0/255.255.255.0 : 해당 Network 대역대만 허용
-------------- ( option ) -------------------
ro : 읽기 전용
rw : 읽고 쓰기 가능
sync : 동기화
no_root_squash : 접근한 사용자 = root
root_squash : 접근한 사용자 = nfsnobody ( 기 본 값 )
ex) /raid/level01 *(ro,sync)
l l l
l l +----- option
l + --- access_allow_host/network
+---- 공유할 디렉터리
ex) /share *(rw,sync)
3) Service Start
# systemctl start nfs <-------- nfs 데몬을 시작한다
# systemctl start rpcbind <------ rpcbind 데몬을 시작한다 ( port num = 111 )
( " rpcbind " <-------- 데이터를 전송해주는 기능 )
- 확인
# ss -ant
# exportfs
4) 방화멱 설정
# firewall-cmd --zone=home --add-service=nfs --permanent
# firewall-cmd --zone=home --add-service=rpc-bind --permanent
# firewall-cmd --zone=home --add-service=mountd --permanent
# firewall-cmd --reload <------------- 영구적 설정을했으므로 해준다
2. Client ( ServerB )
1) 설치
# yum -y install nfs-utils.x86_64
2) mount
- Server 확인
ex) showmount -e < server_ip>
# showmount -e 100.100.100.100
- mount
ex) mount -t nfs < server_ip > : < dir_path > < mount_point >
l l
- 마운트 타입은 nfs l l
device 이름 l
마운트 포인트
Client # mkdir /nfs_share <--------- 마운트 포인트 디렉터리
Client # mkdir /nfs_raid <---------- //
ex) 100.100.100.100:/share -----> /nfs_share
- nfs_share 디렉터리를 100.100.100.100:/share 로 마운트
# mount -t nfs 100.100.100.100:/share /nfs_share
ex) 100.100.100.100:/raid/level01 --------> /nfs_raid
- nfs_raid 디렉터리를 100.100.100.100:/raid/level01 로 마운트
# mount -t nfs 100.100.100.100:/raid/level01 /nfs_raid
------------------------------ [ 실 습 ] ------------------------------------------
1.share ( rw )
client # ls -l /nfs_share
-> server /share ( Centos-root )
# touch /nfs_share/client 파일을 만들겠다.
2. leve01 ( ro )
client # ls -l /nfs_raid
-> server /raid/level01 ( level01 )
# touch /nfs_raid/client
---> client 에서 /nfs_share 디렉터리에 파일을 생성할 수 있도록 설정을 변경
Server # setfacl -m u:nfsnobody:rwx /share
// # getfacl /share
client # touch /nfs_share/client
Client 에서 확인
Server 에서 확인
ServerA 에서 vi /etc/exports 로 바꿔준다
/raid/level01 100.100.100.0/255.255.255.0(rw,no_root_squash,sync)
/share 100.100.100.200(rw,sync)
C # mount -t nfs 100.100.100.100:/share /nfs_share
- 마운트 할수 없다
C # mount -t nfs 100.100.100.100:/raid/level01 /nfs_raid
- no_root_squash 로 설정되어있기 때문에
- root 의 권한으로 사용할수있다.
3) Auto_mount
# vi /etc/fstab
- 적어줄 항목
l--- defaults 에 오토설정이다
100.100.100.100:/raid/level01 /nfs_raid nfs defaults 0 0
l l l
이 장치를 이장치로 마운트 파일시스템 : nfs
이설정을 하면 Server pc 가 종료되면 client pc 부팅시 부팅오류가 생길수 있다.
----------------------------------- [ 실 습 ] -----------------------------------------------
ServerB 에서 NFS Server 설정
1. 설치
# yum -y install nfs-utils.x86_64
2. 설정
/etc/exports
/data 디렉터리를 공유
- 100.100.100.0. 네트워크 대역대만 허용
- 옵션 rw , no_root_squash,sync ( 읽기 , 쓰기 가능 , root 사용자로 매핑 )
# vi /etc/exports
- /data 100.100.100.0/255.255.255.0(rw,no_root_squash,sync)
- 작성을 해주고 저장 종료
3. 서비스 시작
# systemctl start nfs
# systemctl start rpcbind
- 두개의 서비스를 시작해준다
4. 방화벽 설정
# firewall-cmd --zone=public --add-service=nfs --permanent
# firewall-cmd --zone=public --add-service=rpc-bind --permanent
# firewall-cmd --zone=public --add-service=mountd --permanent
# firewall-cmd --reload <------------- 영구적 설정을했으므로 해준다
- 부팅시 자동 설정
systemctl enable nfs
systemctl enable rpcbind
SAMBA
- SMB ( Server Message Block ) 프로토콜 사용
> SMB + LanManager + NetBIOS = CIFS ( Common Internet File System )
- 리눅스 서버에서 원격지의 리눅스 및 윈도우즈를 비롯한 SMB/CIFS 프로토콜을 사용하는 다양한
운영체제의 클라이언트에게 파일 및 프린터 공유 서비스를 제공하는 오픈소스 프로그램
1. Server ( Windows ) <--> Client ( Server A )
1) Server ( Windows )
- 공유 폴더 설정
1 . 폴더생성
2. 폴서 속성
3. 공유 -> 고급 공유
4. 공유 -> 공유( 사용자 추가 == everyone )
5. 네트워크 및 공유센터 클릭
6. 암호보호 공유 끄기로 변경
2) Client ( Server A )
1) 설치
# yum -y install samba-client.x86_64
# yum -y install cifs-utils.x86_64
2) mount
- Server 확인
ex) smbclient -L <server_ip> -U <user_name>
# smbclient -L 100.100.100.1
- Windows 의 패스워드를 요구하지만 그냥 enter
- mount
ex) mount -t cifs <server_ip>\ <dir_name> <mount_point>
ex) \\100.100.100.1\samba
# mkdir /smb_win
# mount -t cifs \\\\100.100.100.1\\samba /smb_win
2) Server ( Server A ) <-> Client ( Windows )
1) 설치
( www.samba.org )
# yum -y install samba.x86_64 -------> samba - 4.7.1 버젼
2) 설정
# vi /etc/samba/smb.conf
# man smb.conf < ------------- 설명
# vi /etc/samba/smb.conf.example <----------- 설명
1) [ global ] <--- 전체 설정
- workgroup = SAMBA
l- 공유설정을 어떤 work 그룹에 공유해줄지 설정
l-> windows 의 작업그룹과 동일하게 설정
- security = user
l- 인증 레벨 ( user(암호켜기) , share(x)(암호끄기) , server(x) , domain )
l l
samba 4 부터 두 개 가 사 라 졌 다.
[global]
workgroup = WORKGROUP
security = user
log file = /var/log/samba/log.%m
max log size = 50
2) [ public ] <--- 공유 디렉터리 설정
- path = < path >
- read only = < yes or no >
- writable = < yes or no >
- comment = < comment >
[public]
path = /samba
read only = yes
writable = no
comment = ServerA
3) [ homes ] <--- 홈 디렉터리 설정
- read only = < yes or no >
- writable = <yes or no >
- comment = <comment >
- browseable = < yes or no >?
[homes]
read only = no
writable = yes
comment = Home_Dir
browseable = no
3) 서비스 시작
# systemctl start smb
- 확인
# ss -at
# smbstatus <------- 연결되어있는 정보를 보여준다
(*449 *139 samba 포트로 랜섬웨어를 뿌린적이있다.)
4) 방화벽 설정
# firewall-cmd --zone=home --list-all <--- home영역 리스트 보기
# firewall-cmd --zone=home --add-service=samba --permanent
- samba 서비스 추가
# firewall-cmd --reload <-- --permanent 옵션을 넣었다면 reload
5) samba 패스워드 설정
ex) smbpasswd -a <user_name>
-a : 추가
-x : 삭제
ex) linux , java 사용자에게 samba 패스워드 설정
패스워드는 확인차 2번 입력함
# smbpasswd -a linux
# smbpasswd -a java
- windows 에서 리눅스 공유파일로 접속하기
시작 -- 검색창에 \\< linux_ip >
※ Windows ※
ㄴ
> net use <------------- 연결 정보 출력
> net use /delete * <-------- 연결 정보 삭제
( Y / N ) :
----------------------------------- [ 실 습 - 익명연결 허용 ] -----------------------------------------------
1. 설치
# yum -y install samba.x86_64
2. 방화벽 설정
# firewall-cmd --zone=public --add-service=samba --permanent
- samba 서비스 추가
# firewall-cmd --reload <-- --permanent 옵션을 넣었다면 reload
3. 설정
Samba3 = security = share
( user : 사용자명으로 패스워드 확인 한 후에 접속 o )
( share : samba server 인증 과정 x )
# vi /etc/samba/smb.conf
[global]
workgroup = WORKGROUP
security = user
map to guest = Bad Password
[public]
path = /samba
read only = no
writable = yes
guest ok = yes
public = yes
4. 서비스 시작
# systemctl start smb
- 확인
# ss -ant
+------------------------------------ samba option ------------------------------------------+
read only : 공유 디렉토리를 읽기만 가능하게 할 것인지를 결정
writable, write ok : 공유 디렉토리를 쓰기 가능하게 할 것인지를 결정
valid users : 공유 디렉토리에 로그인할 수 있는 사용자를 결정
public, guest ok : 다른 사용자들이 이용하게 할 지를 결정
browseable : 공유 디렉토리의 리스트를 보여줄 지를 결정
printable : 공유 디렉토리에 스풀 파일을 지정할 것인지를 결정
path : 공유할 디렉토리의 절대경로를 지정
comment : 간단한 설명을 적음
create mask, create mode : 파일을 생성할 때의 모드를 결정. umask값형태로 지정.
write list : 쓰기가 가능한 특정 사용자를 지정
+---------------------------------- Magic cookies ---------------------------------------------+
%u : 현재 사용중인 유저
%g : 현재 사용중인 유저 그룹
%m : 클라이언트의 NetBIOS이름
%v : 버전
%h : 호스트이름
%p : 서버의 홈디렉토리 경로
%d : 서버의 프로세서ID
%S : 현재 사용되는 서비스 이름
%P : 현재 사용되는 서비스의 루트 디렉토리
%U : 세션의 유저
%G : 셔션의 유저그룹
%H : %u로 주어진 유저의 홈디렉토리
%L : 서버의 NetBIOS이름
%M : 클라이언트 머신 이름
%N : NIS 홈디렉토리 서버의 이름
%I : 클라이언트 머신 IP
%T : 날짜와 시간
'Server > Linux' 카테고리의 다른 글
FTP (ACTIVE mode & PASSIVE mode) Xinetd (0) | 2018.07.26 |
---|---|
FTP & 접근제어 (0) | 2018.07.20 |
디스크 관리 (0) | 2018.07.16 |
Network (0) | 2018.07.13 |
방화벽 & 서비스 (0) | 2018.07.12 |