사용자 격리는 서버에서 FTP를 구축활때 사용자별로 디렉토리사용권한을 독립시켜 다른 사용자또는 다른 디렉토리로의 접근자체를 차단시키는 것을 말합니다.
하나의 서버에서 다수의 사용자들에게 FTP를 호스팅을 해야 하는 경우 유용한 설정 방법입니다.
(1) FTP Folder 생성
먼저 FTP로 설정할 Folder를 설정합니다. 예제에서는 D 드라이브의 Users Folder 하위에 LocalUser라는 Folder를 생성합니다.
전체 서버 설정(StartPage 아래)에서 아래 설정내용을 우선 확인하고 계속 진행합니다.
1. FTP User Isolation -> User name directory (disable global virtual directories)
2. FTP authorization Rules -> 사용자 추가 여부
3. FTP authentication -> IisManagerAuth - Enable, Basic Authentication - Enable
4. IIS Manager Users -> 사용자 추가 여부
(2) FTP Site 생성
IIS관리자에서 사이트에 마우스(Mouse)오른쪽 버튼(Button)을 눌러 'FTP 사이트 추가'를 선택합니다.
FTP 사이트 추가 화면에서 이름을 입력하고 '실제 경로'에는 조금전 생성한 Folder에서 Users Folder를 선택하고 '다음'을 누릅니다.
필요하다면 IP주소와 호스트 이름, SSL등을 설정하고 '다음'을 누릅니다.
마침을 눌러 FTP 사이트 생성을 완료합니다.
(3) 가상 디렉토리 생성
만일 tmpuser라는 계정의 사용자 격리를 진행하려면 위에서 생성한 LocalUser Folder 하위에 tmpuser라는 Folder를 만듭니다.
IIS관리자에서 생성한 FTP Site를 통해 LocalUser에서 Mouse오른쪽 버튼을 눌러 '가상 디렉토리 추가'를 선택하고 별칭에 tmpuser를 입력합니다. 그리고 '실제경로'에서 이전에 생성한 tmpuser Folder를 선택한 다음 '확인'을 누릅니다.
(4) 사용자 추가
IIS관리자에서 'IIS 관리자 사용자'를 통해 tmpuser라는 계정을 추가합니다.
FTP Site에서 'FTP 권한 부여 규칙'을 통해 위에서 추가한 사용자를 등록합니다.
(5) 사용자 격리 설정
IIS관리자의 FTP Site에서 'FTP 사용자 격리'를 두번 Click합니다.
사용자 격리 설정 화면에서 '사용자 이름 디렉터리(전역 가상 디렉터리 사용 안 함)'을 선택하고 오른쪽 작업에서 '적용'을 누릅니다. 이렇게 설정하면 tmpuser는 tmpuser라는 Folder이외에 그 상위 다른 Directory는 사용할 수 없게 됩니다. 만일 최상위 Folder를 누구든 접근할 수 있는 공용으로 지정하고 그 하위에 각 사용자 별로 특정공간을 제공해야 한다면 '사용자 이름 실제 디렉터리(전역 가상 디렉터리 사용)'을 선택하도록 합니다.
설정이 완료되면 명령행에서 아래 명령을 내립니다.
CACLS "%SystemDrive%\Windows\System32\inetsrv\config" /G "Network Service":R /E CACLS "%SystemDrive%\Windows\System32\inetsrv\config\administration.config" /G "Network Service":R /E CACLS "%SystemDrive%\Windows\System32\inetsrv\config\redirection.config" /G "Network Service":R /E |
(6) 테스트(Test)
tmpuser Folder에 Default.htm 파일(File)을 넣어두고 FileZila를 통해 접속을 시도해 보겠습니다.
Default.htm File이 정상적으로 출력됨을 확인 할 수 있으며 상위 Folder로 이동하려 해도 허용하지 않음을 알 수 있습니다.
참고 : FTP 방화벽 지원에 맞춘 방화벽 포트 설정 -> 21, 데이터 채널 포트 범위
'Server > Windows Server' 카테고리의 다른 글
무차별 대입 공격 방어 도구 (Brute Force Attack Depend Tool) - Ban_Server (0) | 2022.08.22 |
---|---|
[Windows Server] 원격제어(원격데스크톱) 접속 로그 확인 (0) | 2021.12.16 |
GIT원격서버 설치 / Visual Studio 연동 (0) | 2021.04.02 |
무차별 대입 공격 도구 (Brute Force Attack Tool) - Ban_REMOTE_MSSQL (0) | 2020.11.24 |
[Windows Server] netstat 명령어 (0) | 2019.10.07 |