메뉴 닫기

인증없이 파일전송 (netcat, pv)

logo-netcat

 

테스트 환경
Ubuntu 14.04 LTS
# apt-get install netcat pv

보통 파일전송할때 ftp 나…scp를 이용하지만….여기서는 netcat (nc) 와 pv를 이용해서 서버간 파일전송하는 방법입니다.
netcat 은 네트워크 연결을 통해 데이터를 읽거나 쓸수 있도록 만든 프로그램으로 별도의인증없이 데이타 전송이 진행되기에 중요한 데이타일 경우 권장하지 않으며 연결제약이 있는 환경에서 사용하길 권장합니다.
※ pv – monitor the progress of data through a pipe
    netcat(nc) — arbitrary TCP and UDP connections and listens

A서버 : 172.16.210.31
B서버 : 172.16.210.32
전송파일 : ubuntu-14.04-server-amd64.iso

여기서는 전송속도 향상을 위해 압축과정을 거쳐 4879포트를 오픈(LISTEN)해서  A서버 파일(ubuntu-14.04-server-amd64.iso)을 B로 전송하는 예입니다.

A 서버
:: 4879 포트로 파일전송
# tar -zcf – ubuntu-14.04-server-amd64.iso | pv | nc -l -p 4879 -q 5
  64kB 0:00:02 [   0B/s] [  <=>                                                            

Option
-l  : 서버모드(Lissten) 접속/연결대기 상태
-p : Listen 포트번호
-q : 지정된 시간만큼 대기 / 음수일겨우 무한정 대기

:: 새창에서 전송 포트 LISTEN 확인
# netstat -anlp |grep :4879
tcp        0      0 0.0.0.0:4879            0.0.0.0:*               LISTEN      20404/nc   

B 서버
:: A 서버(172.16.210.31) 4879 포트로 파일 전송받음
# nc 172.16.210.31 4879 | pv | tar -zxf –
 298MB 0:00:12 [25.8MB/s] [                         <=>           

:: 전송된 데이타 확인
# ls
ubuntu-14.04-server-amd64.iso

Subscribe
Notify of
guest
1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
trackback

[…] 2. PV (Pipe VIewer) 활용pv는 이전에도 데이타 전송상태 확인할때 활용하기도 했다.http://idchowto.com/?p=28038 […]

1
0
Would love your thoughts, please comment.x
()
x