Fall in IT.

AWS - EC2 인스턴스 FileZilla(sftp)로 접속하기 본문

Amazon Web Service(AWS)

AWS - EC2 인스턴스 FileZilla(sftp)로 접속하기

D.Y 2016. 6. 15. 23:30
안녕하세요. 

오늘은 EC2 인스턴스에 File Transfer 할 수 있는 여러가지 방법들 중 FileZilla 클라이언트를 사용하는 방법에 대해서 설명하겠습니다.



목적

  • FileZilla 클라이언트 프로그램을 사용하여 로컬PC에서 원격서버(EC2 instance)에 접속하여, 파일을 업로드/다운로드 합니다.

구축환경
  • 로컬PC 1대 (클라이언트)
  • AWS의 EC2 서버 1대
  • FileZilla의 sftp를 사용할 것이므로, EC2서버 22번 포트(ssh와 동일) 오픈 합니다.
    (sftp는 ssh와 마찬가지로 전송시 암호화시켜서 전송을 하게 되는데, FTP와 같이 파일을 전송할때 암호화 시켜서 전송합니다. )

구축방법
- 로컬PC에 FileZilla는 설치되어있고, EC2 인스턴스 또한 생성되있다는 가정하에 설명합니다.

  • 첫번째로, sftp를 연결하고 로컬에서 원격서버에 write(파일쓰기)를 하기 위해선 root계정으로 connect되야 합니다.
  • 따라서, EC2 서버의 root계정을 먼저 활성화 해보도록 하겠습니다.
  • EC2 서버에서 /etc/ssh/sshd_config 파일을 열고, PermitRootLogin no > PermitRootLogin yes 로 변경합니다.





  • 두번째로는 su root 명령을 사용하여, root계정으로 접속합니다.
    (만약, root passwd 설정을 별도로 하지 않았거나 잊어버렸을 경우 아래와 같이 새롭게 설정합니다.)


  • 세번째로는 ~/.ssh 디렉터리 안에 authorized_keys를 EC2서버에 디폴트로 접속할때, 사용하는 ec2-user의 authorized_keys로 변경합니다. /home/ec2-user/.ssh/authorized_keys를 ~/.ssh 디렉터리 하위에 복사합니다.
    (변경 이유는, terminal에서 EC2서버에 접속할때, 인스턴스 생성 시 할당받은 pem파일을 가지고 root계정으로도 접속되도록 하기 위함입니다.)







  • 키를 변경후, 설정을 적용시키기위해 service 명령어를 사용하여 sshd을 재시작합니다.



  • 기존에 ec2-user로 접속할때 사용한 pem파일을 사용하여 root계정으로 접속해봅니다.



  • 이제 로컬 PC에서 FileZilla client 프로그램을 사용하여 EC2서버에 연결해보도록 하겠습니다.
    먼저 FileZilla를 실행하고, 좌측 상단에 Site Manager를 클릭하고, 정보를 입력합니다.

    (Host는 EC2서버 IP를 입력하고, Port - 22, Protocol은 SFTP, User는 root, Logon Type 은 Key file로 변경하고, 인스턴스 생성 시 할당받은 pem파일을 설정합니다.)



  • 접속이 완료됩니다!



모두 즐거운 코딩하세요~



Comments