파일질라(FileZilla) 다운로드 및 라이트세일 서버에 접속하기(SFTP 클라이언트 프로그램으로 접속)

15

이번에는 FTP 클라이언트 프로그램 중 하나인 파일질라(FileZilla) 다운로드 방법과 암호 키파일을 이용한 SFTP 접속을 알아보고자 합니다. 

(S)FTP 와 클라이언트 앱

FTP는 단지 파일전송을 위한 통신규약의 명칭입니다. 단순히 파일을 저장해두기위한 FTP 서버도 있습니다. 우리가 사용할 건 FTP서버 프로그램이 아니라 클라이언트 프로그램입니다.

흔히 FTP 클라이언트 프로그램(앱)이라고 하면 그것을 수행하는 GUI 프로그램을 이야기합니다. 마우스로 클릭해서 할 수 있는 실행 프로그램 말이죠.  GUI가 아닌 명령줄을 이용한 CLI용 FTP 전송프로그램도 있습니다. 단지 CLI는 UI가 없어서 우리에게 익숙하지않고 보이지 않을 뿐이죠.  하지만 CLI는 직관적이지 않고 여러 명령어들을 익히기 쉽지 않습니다. 그래서 Transmit,Fork Lift, FileZilla, WinSCP 같은 GUI 툴을 이용합니다.

FTP 클라이언트는 우리의 컴퓨터에서 탐색기나 파인더를 통해서 폴더를 열고 파일을 찾아보는 것처럼 사용할 수 있습니다. 자주 쓰시는 분들은 컴퓨터에 기본으로 설치되어있는 탐색기(윈도우)나 파인더(맥) 대신에 사용하기도 합니다. 꼭 서버에 파일을 업로드, 다운로드하려고 쓰는건 아니란 거죠. 좋은 프로그램은 탐색기나 파인더 보다 더 좋은 기능이 있거나 더 사용이 편리하기도 하니까요.

그리고 FTP는 보안성이 떨어져서 SFTP라는 보안이 더 우수한 통신규약도 있습니다. 요즘엔 왠만하면 SFTP 접속, 전송기능을 모두 가지고 있기에 FTP 클라이언트나 SFTP클라이언트나 같은 말입니다.

직업적으로 FTP를 많이 쓰는 사람은 개발자, 웹마스터(웹엔지니어)일 것입니다. 전통적으로 웹개발의 작업흐름이 일단 내 컴퓨터인 로컬 환경에서 사이트를 개발해 만들어보고 테스트합니다. 그런다음 테스트까지 모두 끝나면 실제 서버로 모든 파일을 올려서 배포를 하는 거죠.  이전 글에서 내 컴퓨터 로컬환경에 워드프레스를 설치하는 건 다루지 않았는데요. 워드프레스 블로그 하나 운영하자고 내컴퓨터에 부담을 주는 건 옳치 않다고 생각 하기 때문입니다.  언젠가 플러그인 개발글을 쓴다면 다뤄보고 싶긴 하지만 다른 블로그글을 추천하는 게 나을 것같습니다.

 

SFTP클라이언트 파일질라(FileZilla) 다운로드

파일질라는 맥이나 윈도우, 리눅스 모두에서 사용할 수 있는 무료 FTP 클라이언트 프로그램이라서 많은 사람들이 애용합니다.  FTP접속을 자주쓰는 맥 컴퓨터 사용자에겐 개인적으로 유료지만 간편하고, 맥 친화적이고 빠른 Transmit을 추천드립니다만…

파일질라는 서버용이 있고 클라이언트용이 있습니다. 우리에게 필요한건  클라이언트입니다. 먼저 파일질라 클라이언트 다운로드 페이지에 접속합니다.

맥에서 공식홈페이지에 접속하면 아래처럼  Mac OS X 용이 먼저나오고 파란 버튼이 나옵니다. 윈도우에서 접속하면 Window용이 나올 것같네요. 그렇지 않다면 자신의 윈도우 컴퓨터가 64비트 인지 32비트 확인후 그에 맞는걸 다운로드 받으면 됩니다. 

파일질라 다운로드 페이지

 

Download 버튼을 눌렀을 때 프로용과 일반버전을 택할 수 있는데  Pro는 유료이니 일반버전을 받아주세요.

파일질라 프로버전과 일반버전 선택화면



 

다운로드 되면 압축파일을 풀고 설치 파일이 나오면 설치해주세요. 설치방법은 다루지 않겠습니다만 설치과정에 아래와 같은 화면이 나오면 No, thanks를 선택하고 Next로 넘어가세요. 웹브라우저 홈페이지를 YAHOO로 바꿀건지 묻는 창인데 한국 야후는 망한지 오래입니다.

야후를 기본 홈페이지로 할까요?

 

파일 질라의 첫 화면은 아래처럼 생겼군요. (파일질라 처음 써보는 필자)



파일질라 첫모습

 

여기에서 로컬 사이트리모트 사이트가 있는데 로컬사이트는 내 컴퓨터의 폴더이고, 리모트사이트는 여러분의 서버를 말합니다. 아직 서버에 연결되지 않아 오른쪽에는 아무것도 나오지 않네요.

내 컴퓨터의 특정폴더가 왜 로컬 사이트냐… 그 이유는 FTP를 이용하는 이유중 하나가 내 컴퓨터에 로컬서버환경을 꾸며놓고 사이트 개발을 하다가 완료되면 서버에 폴더를 통채로 올리거나 동기화 하는 웹개발, 배포 작업방식 때문입니다. 굳이 리모트 서버라고 안하고 사이트라고 하는 이유가 거기있습니다. ‘사이트’는 한 개의 도메인에대한 루트폴더를 얘기하는 거죠. 제 블로그 글중에 한 서버에 두 개의 워드프레스 블로그 사이트 설치하기 시리즈 글을 보면 두번째 블로그용 루트폴더로 second-wordpress라는 폴더를 만들었다는 것을 아시게 될 겁니다

 

위그림에서 왼쪽칸은 내 컴퓨터를 표시하고 있고 오른쪽에 내 서버를 연결해야겠죠. 다음으로는 FTP 클라이언트로 아마존 라이트세일 서버에 접속할 준비를 해봅시다.

 

라이트세일 서버 접속 용 암호 키파일 준비하기

서버에 FTP클라이언트로 접속할 때 FTP와 SFTP의 차이가 있는데 FTP는 로그인아이디와 비밀번호로 접속하지만 보안성이 떨어집니다. SFTP또한 비밀번호로  접속은 가능하지만 기본은 암호키 파일(.pem)로 접속하는 것입니다. 그리고 아마존 라이트세일에서는 비밀번호를 통해서 접속할 수 없도록 되어있습니다. 하는 방법이 있는지는 모르겠지만 제가 알기론 그렇습니다. 그래서 이전에 라이트세일 인스턴스를 생성할 때 받아둔 개인 암호키파일인 .pem 파일을 통해서 접속할 겁니다.

pem파일을 내컴퓨터에 처음 다운 받았을 때 해야 할일이 있습니다. 곧바로 pem파일을 사용할 수는 없어요. 제 블로그글을 따라 워드프레스를 설치하신적 있다면 이미 하셨겠지만 일단 처음 받은거라고 가정하고 자신의 컴퓨터에서 CLI 툴을 엽니다.

중요: 윈도우 컴퓨터를 쓰신다면 chmod  대신 여기 링크에 나온대로 pem파일을 준비하시면 됩니다.

저는 Mac 컴퓨터라서 터미널 프로그램을 열었습니다. 리눅스컴퓨터도 같을 겁니다.

그리고 아래와 같은 형태로 .pem파일의 위치를 지정해서 chmod 명령어를 넣습니다



chmod 600 /폴더/경로/.pem파일

저는 아래처럼 했는데 제 pem파일 위치는 경로가 좀 길지만 신경쓰지 마세요. 폴더이름이나 파일이름 중간에 스페이스바가 있다면 스페이스바 앞에 역슬래시 기호를 넣어줘야합니다. 

pem 파일에 600번 권한 설정하기

그런다음 엔터(리턴)키를 입력해주면 pem파일을 사용할 준비가 된것입니다.

Tip: 맥컴퓨터 사용자의 경우 chmod 600 한칸띄고 까지만 입력한다음 .pem파일을 끌어다 터미널 프로그램에 올리면 위에처럼 경로가 자동으로 입력됩니다.

다시한번 이야기하지만 앞서 언젠가 한번이라도 chmod 600번 권한을 pem파일에 부여한 적 있다면 두 번 해줄 필요없습니다. 이걸 해주는 이유는 처음 다운받은 pem 파일은 그 어떤 컴퓨터 사용자도 이 파일을 실행할 권한이 없기때문에 실행권한을 부여해주는 것일 뿐입니다.

 

파일질라에서 pem파일을 통한 SFTP 접속 설정하기

파일질라의 메뉴항목에서 파일 > 사이트 관리자 메뉴를 선택합니다. 

그러면  사이트 관리자 라는 창이 나올겁니다.

일단 자신의 사이트 목록을 만들어야합니다. 새 사이트 버튼을 눌러 이름을 정해줍니다. 전 Demo Site 라고 지었습니다. 

새 사이트 추가하기

 

그러면 오른쪽 항목들이 편집가능 상태가 됩니다.  아래처럼 일반항목 모두 작성해줍니다.

파일질라 사이트 관리자에서 사이트 설정

 

  • 호스트는 자신의 서버(라이트세일 인스턴스)의 퍼블릭 IP (도메인을 연결했다면 도메인)
  • 포트번호는 22번,
  • 프로토콜은 SFTP,
  • 로그온유형은 암호 키 파일 접속으로 지정해줍니다.
  • 중요: 제 블로그의 첫 워드프레스 설치하기 방식으로 비트나미 블로그를 설치했다면 사용자명은 bitnami입니다. 비트나미가 아니라 깡통 우분투서버를 골라 LEMP 스택 혹은 wordpress 수동설치했다면 사용자명이 ubuntu 일것입니다.
  • 키파일은 찾아보기 버튼을 눌러서 자신의 개인암호키 파일인 .pem파일을 찾아 지정해줍니다.

그리고 연결 버튼을 누르면 아래처럼 서버를 신뢰할 건지 묻습니다. 자신의 서버가 맞다면 확인을 눌러주세요.

파일질라 알 수 없는 호스트키 경고창

 

아래처럼 상태메시지가 나오면서 디텍터리 목록 조회 성공이 나오고

파일질라 오른쪽 칸에는 이제 라이트세일 서버에 있는 bitnami 사용자의 홈폴더가 나옵니다.

파일질라로 서버 접속 성공

 

파일질라를 종료하거나 접속 종료버튼을 클릭하면 접속이 종료되고, 서버에 재접속하려면 사이트 관리자 창을 다시 열어서 연결하면 됩니다.

파일질라 툴바 버튼

다음으로는 기초적인 사용방법과 유용할만한 설정에 대해 알아보겠습니다.

15 댓글

  1. 안녕하세요 올려주신 글에 감명과 강한 실천으로 큰 도움을 얻고 있습니다. 자리를 빌어 진심으로 감사드립니다.
    다름아니라 말씀주신 내용으로 잘 진행을 하고 있는데 파일질라 접속이 계속 않되어 애를 먹히고 있네요. 그런데 올려주신 글중에 chmod 600에 관련된 부분을 제가 놓쳐서인건지 해서 몇번이고 키파일을 지웠다 다운받았다를 반복해서 하는데도 “‘chmod’ is not recognized as an internal or external command, operable program or batch file.”이런 메세지가 뜨는군요. 혹시 고견을 부탁드려도 될지 모르겠습니다.

  2. 안녕하세요. 너무나 자세한 글 덕분에 워드프레스 블로그를 막 만든 블로거입니다.
    초보인지라 이런저런 방법으로 더디게 블로그를 만들어서 파일질라로 서버에 접속하여 몇 가지 수정을 하곤 했었는데요.
    어느날 접속이 안되서 며칠째 방법을 찾다가 염치불구하고 스위프트님께 질문드려요.

    저는 여기서 설명하신대로 블로그를 개설한 상태이고(lightsail, godday 이용), 기존 키파일 그대로 sftp 접속하였는데 아래와 같이 오류가 났습니다.

    명령: 기존 사용 keyfile 경로
    명령: open “bitnami@고정 IP 혹은 도메인” 22
    명령: Pass:
    오류: 인증 실패.
    오류: 치명적 오류: 서버에 연결하지 못함

    검색해서 찾은 내용들로는 다 해결하지 못했습니다.(ftp 프로그램 변경, 업데이트 등)

    혹시 키파일 사용권한에 문제가 있는걸까요? 설명하신대로 pem 파일을 준비했는데 혹시나 해서 보니 Administrator, System, 제PC 모두 사용권한의 ‘허용’ 부분이 비활성화 되어 있더라구요, 그래서 특정권한 고급설정에서 상속 안함으로 변경하니 다시 사용권한이 활성화 되어서 ‘읽기 및 실행’과 ‘읽기’ 부분만 체크를 했습니다.

    새로운 인스턴스를 생성해서 키파일을 다시 만들어야하는지.. 방법이 어떤 게 있을지 답변 부탁드립니다.

    너무 긴 질문이라 죄송하고 감사합니다.

      • 빠른 답글 감사합니다.

        설명해놓으신 방법으로 접속 했을 시 아래와 같은 내용이 나옵니다.
        bitnami@고정 IP’s password:

        무엇이 문제일까요..

        • 혹시 키파일을 라이트세일이 제공하는 디폴트 키파일을 쓰신다면 새로운 인스턴스 생성과정에서 다시 디폴트 키파일을 다시 다운로드 받으실 수 있을 겁니다. 그거 다운로드 받아서 다시 해보시는게 좋겟네요.

          • 네, 워드프레스 설치 시 개인 키파일을 생성해서 했으나 CLI에서 bitnami로 접속이 안되어 디폴트 키파일로 하니 접속이 되어서 여태껏 썼었네요..
            디폴트 키파일을 다시 다운받아서 접속해보아도 계속 같은 오류가 발생합니다.
            새 인스턴스를 생성해서 옮기는 게 맞을까요..

          • 되던게 안되는게 어디에서 문제인지 모르는 상황이니 새로운 인스턴스로 생성해서 옮기는게 나을 것같네요.

  3. 스위프트님의 글을 따라 열심히 따라가고 있는 중입니다. 파일질라를 통한 서버접속은 무사히 마쳤으나 bitnami-apps-wordpress-htdocs-wpcontent-plugins 경로로 들어가 플러그인중 하나를 삭제하려 하는데 Error 메세지와 함께 permission denied 메세지가 뜨면서 삭제가 되지 않습니다. plugins폴더와 지우겨는 플러그인폴더 권한은 755로 되어있는데 삭제되지가 않는 원인이 무엇인지 혹시나 아실까해서요. 올려주신 글의 단계에서 무언가 잘못 따라하면 되지 않는걸까요?

    • 권한번호 755같은 경우 소유자는 읽기쓰기실행 가능, 그룹사용자는 읽기,실행만 가능, 다른 사용자는 읽기, 실행만 가능합니다.
      즉 폴더/파일 소유자만이 그 폴더를 삭제할 수 있어요.

      파일질라 접속자는 bitnami이죠. 아마 그 폴더의 소유자는 bitnami가 아닐 겁니다. 그 폴더의 그룹사용자에 bitnami가 포함되더라도 755이기때문에 삭제할 수 없죠. 이걸 파일질라에서 하려면 CLI로 접속후 해당 폴더 권한을 바꾸든 소유자를 bitnami로 바꾸든지 해야합니다.

      소유자, 그룹 변경에대해선 아래 링크를 참고해보시고요.
      https://swiftcoding.org/changing-owner-of-linux-files

      플러그인 폴더는 아파치사용자인 daemon이 소유자로 되어있어야 워드프레스 관리자화면에서 플러그인 설치삭제가 될테니 폴더 소유자를 바꾸는건 추천하지 않고요.
      CLI로 접속해서 권한을 775로 바꾸거나 777로 바꾸면 파일질라로 접속한 bitnami 사용자도 해당 폴더를 삭제할 수 있을 겁니다.
      sudo chmod 775 -R /폴더/경로

      • 상세한 답변 감사드립니다. 보통의 경우(디폴트) 이렇게 파일질라를 통해 설치된 플러그인을 삭제하는 것이 안되는건가요? 플러그인 삭제에 대해 인터넷 검색을 하면 파일질라로 폴더를 찾아 우클릭하면 바로 쉽게 플러그인 폴더를 삭제할 수 있더라구요. 그래서 제가 뭔가 잘못해서 지워지지 않은건가 했었습니다. 그리고 다른 이야기로 이전에 댓글 이메일 알림에 체크를 하였을때는 바로 이메일로 알림이 왔었는데 이번에는 알림이 오지 않았어요. 조금이나마 참고가 되실까해서 알려드립니다.

        • 안녕하세요. 서버컴퓨터의 파일, 폴더 삭제(편집권한)는 리눅스 컴퓨터 사용자, 사용자그룹, 파일소유자의 관계에 따라 다릅니다.

          FTP 접속의 경우 FTP 클라이언트로 접속한 사용자(bitnami)이고 워드프레스 관리자화면을 통한 것은 웹서버사용자(daemon, www-data)입니다.

          그에따라 파일 소유자와 사용자그룹이 어떻게 되어있느냐에 따라 삭제가 되고 안되고 합니다. 두 사용자가 서로 다르기때문에 하나의 사용자그룹에 둘을 모두 넣을 수도 있고, 775 같은 그룹사용자 편집권한을 주기도 하죠.

          이메일 알림은 젯팩플러그인이 발송해주는데 그쪽 문제일 수도 있고요. gmail이라면 스팸이나 소셜 카테고리로 따로 빠져있을 수도 있습니다. 저도 확인해보겠습니다. 알려주셔서 감사합니다.

댓글은 익명이나 SNS, wordpress.com 로그인 지원). 마크다운 문법 사용가능(Shift+~ 키로 특정문구 혹은 위아래 ~~~으로감싸서 여러줄을 코드블락으로 작성)