전편에서 FTP 서비스 기본 설정을 하는 방법과

실행을 위한 설정 과정을 알아 보았으며

익명으로 FTP에 접속하는 방법까지 했었는데요.
이번에는 FTP에 접속할 계정을 만들고 관리하는 방법과 계정간 격리를 통해 고유 폴더를 설정하는 방법에 대해 알아보겠습니다.

FTP 서비스에서 사용될 계정 관리는 이 FTP 권한 부여 규칙이라는 곳에서

할 수 있는데요.
여기에 등록할 계정들은 윈도우 계정을 사용합니다.
따라서 FTP 서비스에 사용할 계정을 새롭게 생성하기 위해선 윈도우 계정 생성을 먼저 해야하죠.
윈도우의 계정과 그룹을 생성하는 방법은

위 그림처럼 시작에서 컴퓨터 관리를 검색하거나

내컴퓨터에서 속성 - 관리를 통해

컴퓨터 관리에 들어온 다음

로컬 사용자 및 그룹에서 할 수 있습니다.

사용자는 윈도우 전체 계정을 관리하는 곳이며

그룹은 사용자를 기능별로 구분하기 위해 속성을 부여하듯 만들어 둔 구분입니다.
새 계정을 생성하는 방법은

사용자 폴더를 우클릭 한 뒤 새 사용자를 선택하면

요렇게 계정에 필요한 정보를 입력하는 팝업이 뜨고
여기서 저는

계정 이름을 ftp_User1 으로 정했으며 암호를 입력하고
다음 로그온 시 사용자가 반드시 암호를 변경해야 함 항목의 체크를 해제하였습니다.

(이게 체크되어 있을 경우 IIS 관리 콘솔에서는 계정 비밀 번호를 변경하는 항목이 없기 때문에 로그인이 불가능 하거나 관리가 어려워 집니다.)
아이디와 비밀번호 입력이 끝나고 이제 만들기를 누르면

이렇게 신규 계정이 추가 되는데요.
새로 생성된 계정을 더블 클릭 해보면

요렇게 속성 창이 나오며 여기서 계정 정보를 수정 할 수 있습니다.

이중 소속 그룹 탭에 가시면 기본적으로 처음 생성된 계정은 Users 그룹에 소속되어 있는데요.
이 User 그룹은 윈도우 사용자 속성을 가지고 있기 때문에 단순히 FTP 사용자용으로 쓰기에는 공간도 많이 차지하고 관리에도 어려움이 많습니다.
만약 이 상태로 컴퓨터를 다시 시작하거나 로그아웃을 하면

요렇게 아예 사용자 로그인도 가능한 상태이죠.
이상태로 그냥 FTP 사용자 계정으로 사용해도 괜찮지만 FTP에만 사용할 계정으로 바꾸고 싶다면

소속 그룹에서 User 그룹을 제거를 한 뒤

추가

그룹 이름을 안다면 바로 입력해도 되지만 편하게 하기 위해 고급을 눌러

지금 찾기를 누르면

기본적인 그룹 리스트가 나오는데 이 중에서 FTP 사용자 용으로 가장 적절한 IIS_IUSRS를 선택합니다.

IIS_IUSRS는 다른 윈도우에 영향을 안주고 IIS 관리 콘솔이 관리하는 통신 프로토콜에 사용하기 딱 좋은 그룹입니다.

이렇게 계정의 소속 그룹 설정이 완료되면

이제 윈도우 로그인에도 영향을 주지 않게 됩니다. ^^
윈도우에 계정을 등록했으니 이제

IIS 관리 콘솔에서 해당 FTP의 권한 규칙 항목으로 이동하여

허용 규칙 추가

지정한 사용자 항목에서 추가했던 윈도우 계정과 동일한 이름을 넣고 적절한 권한을 주고

FTP 서비스가 지정된 폴더의 권한도 변경해야 하기 때문에 사용 권한 편집으로 들어가거나

해당 폴더의 속성에서 보안 탭으로 이동한 뒤

해당 폴더의 사용자 그룹을 편집

추가

윈도우 계정 설정과 동일하죠? 바로 입력해도 되고, 고급을 눌러

IIS_IUSRS를 찾아

등록하고

해당 그룹에게 필요한 권한을 선택하면

FTP 사용자 계정 설정이 모두 끝납니다.

이제 콘솔이나 서비스에서 FTP 서버를 재 실행한 뒤

FTP 접속을 시도해 보면

아무나 들어갈 수 있었던 익명때와는 다르게 사용자의 정보를 뭍은 팝업이 등장합니다.

여기에 아까 등록했던 윈도우 계정 정보를 입력하고 로그온을 하면!

이쁘게 접속이 됩니다. ^ㅡㅡ^
이렇게 FTP에 사용자 계정을 추가하는 방법은 완료 되었으나 사용자들 간 격리가 필요하거나 편의를 위해 고유한 시작 장소가 필요한 경우가 있습니다.
이 사용자 격리와 사용자 폴더를 설정하는 방법도 알아봅시다.

일단 FTP에서 사용자별 사용공간은 계정 이름을 따라가기 때문에 사용할 계정과 동일한 이름으로 폴더를 하나 생성합니다.

저는 ftp_User1 이란 계정을 설정하다보니 똑같은 이름으로 이렇게 만들었습니다. ^^
위치는 FTP 서비스 메인 폴더 아래 어디든 상관이 없습니다.

그리고 해당 경로에 테스트 용으로 파일 하나 저장했습니다.

그리고 해당 폴더 또한 사용자 그룹에 IIS_IUSRS를 추가하고

FTP 사용자 격리 항목에 들어가면

다음과 같은 옵션들이 있는데요.
(디폴트는 FTP 루트 디렉터리로 되어 있습니다.)
이 5가지 옵션에 따라 사용자 격리가 가능합니다.
우선 사용자 격리 안 함. 다음 디렉터리에서 사용자 시작 항목에 2개
사용자 격리. 다음 디렉터리로 사용자 제한 항목에 3개가 있는데요.
1. FTP 루트 디렉터리
- 이건 가장 기본 디폴트 옵션으로 모든 사용자가 FTP 루트 디렉토리를 시작점으로 접속하는걸 의미 합니다.
로그온을 제외하곤 사용자 구분이 없는 상태이죠.
2. 사용자 이름 디렉터리
- 이건 시작점을 무조건 FTP 루트 디렉토리 아래 중 사용자 이름과 동일한 폴더로 하는걸 의미합니다.
1번과는 사용자 별 시작점이 다르다는 점이 있지만 그냥 시작 위치만 정해져 있는거라 1번처럼 모든 사용자가 FTP 루트 디렉토리의 모든 정보를 사용할 수 있기 때문에 격리와는 상관이 없는 옵션입니다.
3. 사용자 이름 디렉터리 (전역 가상 디렉터리 사용 안 함)
- 전역 가상 디렉터리란 IIS 관리 콘솔에서 만들 수 있는 가상의 디렉터리를 의미하는데요.

요렇게 가상 디렉터리를 추가하고

해당 디렉터리의 가상 이름과 실제 경로, 사용자 계정을 지정해 주면 실제 폴더나 파일들은 변함이 없고 FTP에서 접속할때 이 별칭들을 사용자 구역으로 설정해주는 기능입니다.
이 옵션에서는 이 가상 디렉터리를 사용하지 않는다고 했으니 실제로 사용자 이름과 동일한 이름의 폴더가 반드시 있어야 하며 사용자는 접속시 무조건 해당 폴더에서 시작하고 다른 곳으로 이동이 불가능 합니다.
만약 이 옵션을 사용한 뒤

FTP 접속을 시도해보면

사용자 계정과 동일한 이름으로 되어 있는 이 폴더로 이동되어 시작되며 이 폴더의 하위 경로를 제외하곤 다른 상위 폴더나 경로로 이동이 불가능합니다.
사용자 입장에선 전용 공간처럼 느껴지겠네요. ^^
4. 사용자 이름 실제 디렉터리 (전역 가상 디렉터리 사용)
- 이 옵션은 FTP 루트 디렉토리에 사용자 이름과 동일한 실제 폴더가 없더라도 가상으로 만들어진 폴더가 있으면 그곳을 사용자 전용 구역으로 인식해주는 옵션 입니다.
실제 FTP 폴더를 막 바꾸기가 어려운 환경이거나 기존에 사용하던 폴더를 같이 사용할 필요가 있을 경우 주로 사용됩니다.
5. Active Directory에 구성된 FTP 홈 디렉터리
- 마지막 이 옵션은 지정된 Active 디렉터리를 전용 구역으로 설정하는 옵션입니다.
위 5개의 옵션을 통해 원하는 계정별 폴더 관리를 실현할 수 있습니다. ^^
이상으로 윈도우에서 FTP를 설정하고 계정, 격리하는 방법까지 알아봤는데요.
혹시 여기에 내용중 잘못 된 내용이거나 잘 안되는 부분이 있다면 언제든 남겨주세요.
빠르게 답변하겠습니다. ^^
감사합니다!
0 Comments:
댓글 쓰기