아무거나

Mac에서 SSH Proxy 접속 및 파일전송 방법 본문

Infra/MAC OS

Mac에서 SSH Proxy 접속 및 파일전송 방법

전봉근 2018. 10. 17. 17:51
반응형

위와 같이 중간에 방화벽이 있는 경우에 해당 방화벽이 있는 서버를 거쳐 원격 서버로 접속해야하는 상황이 되었다.

이 경우 접속방법을 알아보자.


[ 로컬피시에서 방화벽 서버를 거쳐 원격 서버로 접속하는 방법 ]


1. .ssh/config 파일을 편집기로 실행하여 아래와 같이 입력하고 저장

Host firewall-server   hostName 121.1.2.3   User jbk   IdentityFile ~/.ssh/jbk_firewall_server.pem 
 Host foo-server    hostName 10.10.29.68    User ubuntu    IdentityFile ~/.ssh/jbk_dev.pem    ProxyCommand ssh firewall-server nc %h %p %r 
 - host : 서버 이름 ( ex: 해당 예제에서 접속은 ssh foo-server 을 명령어로 입력할시 자동으로 터널링하여 접속하게 할 것이다. - hostName : 원격으로 접속하기 위한 ip 주소 - user ubuntu : 계정명이며 계정은 ubuntu 라고 설정되있는것이다. - ProxyCommand ssh firewall-server nc %h %p %r : 프록시 서버로 사용될 서버의 접속정보

%h 는 host, %p는 port, %r는 remote user name이다.

* 즉, ssh foo-server 명령을 입력했을때 설정한 ProxyCommand를 통하여 host가 firewall-server 프록시 서버로 거쳐서 접속하겠다는 내용이다. 

  ( 해당 접속 예제는 .pem 키파일로 접속하는 예제이므로 키에 대한 내용도 접속정보에 입력이 되어있다. -> 키파일로 접속 설정으로 안할꺼면 위 정보에서 IdentityFile을 제거하자 )


2. ssh foo-server 로 명령어를 치면 정상적으로 접속되는것을 확인할 수 있다.



[ 로컬피시에서 방화벽 서버를 거쳐 원격 서버로 sftp를 이용한 파일 전송 방법 ]


1. sftp 사용법은 위의 .ssh/config에서 설정한 접속정보를 이용하여 접속이 가능하다.

sftp foo-server


2. 그러면 아래와 같이 sftp에 접속한 화면으로 바뀌고 명령어를 입력하여 파일을 원격전송해보자.

    * sftp 접속전 원하는 경로에서 sftp 명령을 입력하여 접속해야 원하는 파일을 쉽게 경로지정없이 전송할 수 있다. 


// ! (느낌표를 이용하여 경로이동이나 로컬서버 경로의 파일목록을 조회할 수 있다. 단, 전송할떄는 !명령이 없어도된다.) sftp> !ls // 로컬 경로에있는 파일목록 조회 sftp> put filename // 원하는 file로(=filename) 원격서버에 전송 sftp> exit


* 윈도우로 전송하는 방법은 하위 링크를 참조

https://winscp.net/eng/docs/ui_login_proxy

반응형
Comments