Download presentation
Presentation is loading. Please wait.
1
NFS & FTP his & medowhill
2
NFS
3
NFS (Network File System)
분산형 파일 시스템 프로토콜 클라이언트에서 네트워크를 통해 파일에 접근 클라이언트에서 서버가 공유한 디렉토리를 마운트하여 사용
4
RPC (Remote Procedure Call)
Remote interaction에 대한 세부 구현을 신경쓰지 않아도 됨 일반적으로 네트워크를 통해 다른 컴퓨터에 call
5
ONC RPC (Open Network Computing RPC)
NFS에서 사용됨 Portmapper를 통해 RPC 서비스에 접근
6
Portmapper 다른 ONC RPC service를 실행하기 위해 사용하는 ONC RPC service
언제나 111번 포트를 사용 서버가 포트맵에 사용할 포트를 등록
7
NFS 실습
8
서버 #apt-get install nfs-common nfs-kernel-server portmap 공유할 디렉토리 만들기
#mkdir nfstest #chmod 777 nfstest
9
서버 NFS 환경설정 #vim /etc/exports /nfstest *(rw,sync)
10
서버 (/etc/exports) [share-directory] [client](options)
client: host name, domain name, IP address options ro: read only rw: read and write sync: client가 파일 변경시 즉시 동기화
11
서버 NFS 서비스 시작 #service nfs-kernel-server restart
#service portmap restart
12
서버 (rpcinfo)
13
클라이언트 #apt-get install nfs-common #mkdir sample 마운트
#mount -t nfs :/nfstest /sample 언마운트 #umount sample
14
FTP
15
FTP? File Transfer Protocol 말 그대로 파일 전송을 위한 프로토콜
16
복습 Application Layer Transport Layer Network Layer Link Layer
Physical Layer FTP는 어디?
17
복습 Application Layer Transport Layer Network Layer Link Layer
Physical Layer FTP, HTTP, DNS, … FTP는 TCP를 이용하는 application layer의 프로토콜이다.
18
Why FTP? HTTP에 비해 비용(overhead)이 적음 이어받기 기능 지원
파일 전송만을 목적으로 하여 컨트롤에 필요한 데이터도 적음 Out-of-band : 컨트롤 커넥션과 데이터 커넥션 2개의 TCP연결로 분리 ->data 전송에 헤더가 필요 없거나, 아주 짧은 헤더만 이용해도 됨 이어받기 기능 지원 전송 중에 인터넷 연결이 끊어지는 경우, 처음부터 다시 받지 않음 RESTART(REST) : 파라미터로 넘겨주는 지점부터 다시 전송 시작
19
Connection Control과 Data Connection 분리
Control : 명령 전달, ftp 연결 시작부터 끝까지 계속 연결, 서버 21번 포트 이용 Data : 데이터 전달, 데이터 전송할 때마다 새로운 연결
20
Active mode
21
Active mode in NAT Src IP : 138.76.29.7 Dst IP : 223.1.2.5
Src Port : 12354 Dst Port : 21 Data : Port 5151 Src IP : Dst IP : Src Port : 5050 Dst Port : 21 Data : Port 5151 NAT router WAN addr LAN addr :12354 :5050
22
Active mode in NAT Src IP : 223.1.2.5 Dst IP : 138.76.29.7
Src Port : 21 Dst Port : 12354 Data : OK Src IP : Dst IP : Src Port : 21 Dst Port : 5050 Data : OK NAT router WAN addr LAN addr :12354 :5050
23
Active mode in NAT ?? Active mode가 NAT에서 정상 작동하지 않는다.
Src IP : Dst IP : Src Port : 20 Dst Port : 5051 Data : OK ?? NAT router WAN addr LAN addr :12354 :5050 Active mode가 NAT에서 정상 작동하지 않는다.
24
Passive mode
25
Passive mode Active mode에서 일어나는 문제(NAT, 방화벽)을 막을 수 있음
여러 포트를 열어야 함(1024~65535) 여러 ftp 데몬들은 포트 개수를 제한하는 기능이 존재하므로 포 트 개수 문제는 어느정도 해결
26
계정 USER : 사용자 이름 명령어 PASS : 비밀번호 명령어
Anonymous FTP : 아무나 이용할 수 있게 함. 사용자 이름에 anonymous를 입력하고 이용
27
보안 USER : 사용자 이름 명령어 PASS : 비밀번호 명령어 Plane text로 보냄
Src IP : Dst IP : Src Port : 12354 Dst Port : 21 Data : PASS 1q2w3e4r USER : 사용자 이름 명령어 PASS : 비밀번호 명령어 Plane text로 보냄
28
보안 USER : 사용자 이름 명령어 PASS : 비밀번호 명령어 Plane text로 보냄
Src IP : Dst IP : Src Port : 12354 Dst Port : 21 Data : PASS 1q2w3e4r USER : 사용자 이름 명령어 PASS : 비밀번호 명령어 Plane text로 보냄
29
보안 FTPS, SFTP 이용
30
FTPS FTP Secure, FTP-SSL TLS, SSL위에서 돌아감 방화벽에서 안 돌아감
대부분의 방화벽은 새로운 데이터 커넥션을 여는 지 확인함 FTPS는 열리는 새로운 포트 번호가 암호화되어 전해짐 방화벽이 패킷 내용을 확인하지 못 하고, 새로운 포트를 열지 못하게 막음 Firewall incompatibility 참조
31
SFTP SSH FTP, Secure FTP SSH(Secure shell)을 이용하여 FTP의 기능을 구현한 것
커넥션 1개이므로 방화벽 문제 없음 명령어도 다름 22번 포트 이용 sparcs.org, bit.sparcs.org에 연결할 때는 SFTP를 이용한다.
32
FTP Server Software Wu-ftpd ProFTPD vsftpd 2000년대 초까지 가장 많이 쓰이던 프로그램
보안이 아주 나쁨 ProFTPD 다양한 기능을 제공함 널리 사용되는 ftp 서버 프로그램 vsftpd Very Secure FTP Daemon IPv6, FTPS를 지원
33
실습 – FTP Server sudo apt-get install vsftpd
설정 파일은 sudo vi /etc/vsftpd.conf
34
실습 – FTP Server Anonymous_enable Local_enable Pasv_enable Listen
/etc/passwd에 등록된 계정 접 속 허용 Pasv_enable 패시브 모드 사용 가능 Listen Standalone mode 이용 그 외에도 많으니 매뉴얼을 보자
35
Standalone? 데몬이 독립적으로 돌아가는 것 내가 켜놓으면 항상 돌아감 그 반대는 xinetd(자이넷디) 방식
요청이 있을때만 실행됨 xinetd라는 데몬에 의해 실행/종료 응답 속도가 빠름 메모리를 많이 잡아먹음 관리를 개별적으로 해줘야 함
36
실습 – FTP Server 시작 : sudo /etc/init.d/vsftpd start
재시작 : sudo /etc/init.d/vsftpd restart 종료 : sudo /etc/init.d/vsftpd stop
37
실습 – FileZilla 외부에서 접속해보자. Wireshark로 패킷을 찍으면서, 파일질라로 접속해서 다운로드 받는다.
21번 포트를 이용해야 『 진짜 』 ftp를 이용할 수 있다.
38
실습 – FileZilla
39
실습 – FileZilla 서버가 열어준 포트 번호는? his의 비밀번호는? 다운받은 파일의 이름은?
다운받은 파일의 크기는?(대략적으로)
40
실습 – FileZilla 서버가 열어준 포트 번호는? 62184 his의 비밀번호는? 1q2w3e4r
다운받은 파일의 이름은? whoissparcs.txt 다운받은 파일의 크기는? 3160
41
SFTP는?
42
SFTP는?
43
실습 – FTP Client (Console)
sftp [주소] 로 접속, 콘솔 열림 기본적인 명령어 (ls, cd, pwd, mkdir, rmdir, chmod)는 리눅스와 동일 lcd, lls, lpwd, 등의 명령어로 로컬 패스도 조작 가능(내 쪽) get / delete / put [file] : [file]을 가져옴/지움/올림 help : 도움말
44
실습 – FTP Client (Console)
45
Reference https://en.wikipedia.org/wiki/Network_File_System
ure_Call 50&parentCategoryNo=3&viewDate=¤tPage=1&listtype=0 NFS/FTP Wheel seminar
Similar presentations