이번글은 ssh 프로토콜을 이용해 원격서버에 접속하고 scp 명령어를 이용해 local에서 remote 서버로 폴더(파일도 가능)를 복사하도록 하겠다.
SSH(Secure Shell)란?
SSH는 원격 호스트 컴퓨터에 접속하기 위해 사용되는 인터넷 프로토콜이다. 기존의 텔넷도 원격 접속하기 위해 사용되었는데 이는 암호화가 이루어지지 않아 사용자의 개인 정보가 노출될 위험이 존재한다. 따라서 SSH는 기존 텔넷에 암호화 기능을 추가하여 나온 프로토콜이다.(SSH 통신이 다른 이에게 노출된다고 하더라도 암호화된 문자로 보이기 때문에 텔넷보다 안전하다) Shell을 이용해서 원격으로 접속하므로 CLI(Command Line Interface) 상에서 작업을 하게 된다. ssh 연결시에 옵션을 주지 않으면 기본 포트는 22번이다.
SSH 연결
이제 맥북(local server) terminal 창을 켜서 remote server에 접속 할 것이다. 명령어는 다음과 같으며 -p 옵션을 사용하지 않을 경우에는 기본포트 22번으로 연결된다.
$ ssh -p [포트번호] [사용자계정]@[IP주소]
위의 명령어를 사용하여 원격 서버에 연결한 모습이다. 사용자계정에 등록된 password까지 알맞게 입력이 되어야지 접속이 가능하다.
SCP를 이용한 폴더 복사
이제는 local server(필자의 MacBook)에 있는 폴더를 remote 서버로 복사하도록 하겠다.
local에 있는 폴더를 옮겨야 하기 때문에 macbook의 terminal창을 열어 다음 명령어를 입력한다. -P옵션은 포트를 지정할 때 사용하며 사용하지 않을 때는 22번 포트가 기본 값이다. -r 옵션은 폴더를 옯길때 사용하며 사용하지 않을 때는 파일을 복사하게 된다.
$ scp -P [포트번호] -r [local 서버에 있는 폴더위치] [사용자계정]@[원격서버 IP주소]:[서버에서 저장할위치]
다음은 터미널 창에서 위의 명령어를 실행한것을 보여준다. scp 명령어를 입력하고 해당 사용자계정의 비밀번호까지 잘 입력해야 폴더가 이동하는 것을 알 수 있다(모자이크 처리해 보기 어려울 수 있지만 위의 명령어대로 입력한 것이다).
- 이것은 현재 local server(필자의 맥북)에 존재하는 폴더이고 이 폴더가 원격 서버로 이동한 것을 알 수 있다.
- 원격서버로 이동한 폴더