HOME > 이용안내
이용안내
 
작성일 : 19-06-30 14:13
[리눅스서버] SFTP 퍼미션 조정 및 chroot 설정으로 상위폴더 접근 제한하기
 글쓴이 : 제이네트워크
조회 : 46,041  

SFTP 퍼미션 조정 및 chroot 설정으로 상위폴더 접근 제한하기


일반적으로 SFTP를 사용하게 되면 FTP와는 다르게 root 권한을 가지고 있지 않은 일반계정으로도
SFTP를 사용하여 접속하게 되면 접속폴더 상위의 폴더까지 접근이 가능합니다.
개인이 혼자서 사용하는 서버라면 상관없겠지만, 호스팅 서비스를 하거나 여러 사용자들이
접속할 수 있는 서버라면 사용자들 간에 격리가 필요합니다. 그렇지 않다면 사용자 누구나
루트폴더에 접근할 수 있기 때문에 보안, 해킹에 취약한 단점이 있습니다.
이 때, 상위폴더로 접근할 수 없게 설정하는 방법으로는 2가지가 있습니다.
첫번째로는 상위 폴더로 접근할 수 없게 퍼미션을 조정하는 방법이 있고,
두번째로는 SFTP에서 chroot 기능을 이용하여 사용자의 홈 폴더를 root 폴더로 지정하는 방법이 있습니다.

 
1. 퍼미션 조정

 - chmod를 이용하여 주요한 폴더들의 권한을 711로 부여하여 접근을 제어

 예, chmod 711 /home
     chmod 711 /etc 등..

 
2. chroot 설정

 - chroot는 임시로 루트 디렉토리를 설정하는 명령어로, 일반적인 루트 디렉토리가 아닌
   다른 디렉토리(예, /etc, /home 등..)를 임시로 루트 디렉토리인 것처럼 설정할 수 있습니다.
   단, 주의할 점은 chroot를 설정한 계정 또는 그룹은 ssh를 사용할 수 없습니다.
   설정방법은 아래와 같습니다.

 
  ㄱ. ssh 설정 변경

   # vi /etc/ssh/sshd_config

     -> Subsystem sftp /usr/lib/openssh/sftp-server     : 주석처리

     -> Subsystem sftp internal-sftp     : 추가

  ㄴ. 문서 맨 마지막에 Match 구문 추가(user : test)

     -> Match User test

    ChrootDirectory /home/test

            ForceCommand internal-sftp

            X11Forwarding no

           AllowTCPForwarding no

   이 때, ChrootDirectory는 반드시 홈디렉토리가 아닌 다른 디렉토리를 지정해도 상관없습니다.

   # service sshd restart

 

  ㄷ. chroot가 적용된 디렉토리의 소유자를 root로 변경해야 접속이 가능합니다.

   # chown root /home/test

   또한 해당 계정의 권한도 755로 변경합니다.

   # chmod 755 /home/test

 

  이렇게 설정한 뒤 test 계정으로 SFTP를 접속해도 쓰기 권한을 가지고 있지 않기 때문에
  홈 디렉토리 내에서는 아무런 활동을 할 수 없기 때문에 접속이 되지 않습니다. 
  이런 경우 /home/test 안에 임의의 폴더를 생성하여 해당 폴더에 쓰기권한을 부여해주는 방법이 있습니다.

   # mkdir www(임시 디렉토리)

   # chown root:test /home/test/www

   # chmod 775 /home/test/www     : 쓰기 권한 부여

 

   이렇게 설정하게 되면 test 계정으로 SFTP를 접속하게 되면 /home 디렉토리 상위폴더로 접근 불가능 한 chroot가
   적용 된 것을 확인할 수 있습니다.






Cloud server Streaming service Domain Cloud Firewall

 
 

Total 385

번호 제   목   글쓴이 날짜 조회
265 [기타] [XE 1.8 설치시 에러]XE cannot connect to DB 제이네트워크 2015-04-11 41044
264 [PHP] Internet explorer 11 한글 링크 클릭시 두번 클릭해야 되는 현상(한글인코딩문제… 제이네트워크 2015-03-03 41073
263 [리눅스서버] centos7 에서 서비스(Vsftp) 시작 명령어 관련 제이네트워크 2017-05-16 41079
262 [리눅스서버] [리눅스서버]CentOS- 5.11.yum 오류날때 제이네트워크 2017-07-24 41107
261 [윈도우서버] windows 2008/2012 서버 셋팅후 403 forbbiden 에러시 제이네트워크 2015-07-22 41182
260 [메뉴얼] 알ftp 사용법을 위한 메뉴얼 제이네트워크 2011-05-23 41192
259 [리눅스서버] [LINUX]리눅스 명령어로 프로세서 한번에 죽이기 제이네트워크 2015-01-22 41210
258 [윈도우서버] Windows Server 2008/2012 (64bit OS) - IIS7에서 32bit ASP 응용프로그램 사용법 제이네트워크 2015-04-27 41225
257 [메뉴얼] SuperMicro IKVM Menual 제이네트워크 2014-03-31 41264
256 [리눅스서버] vsFTPd 사용시 디렉토리 목록 조회가 안될때 제이네트워크 2017-10-30 41307
255 [리눅스서버] Centos7.x 4TB 이상 하드디스크 추가 및 포맷하기 제이네트워크 2016-06-01 41321
254 [DB] [mysql]그누보드에서 접속카운트가 올라가지 않을 때 제이네트워크 2013-08-25 41422
253 [윈도우서버] [asp]windows2003 IIS6.X 설정백업 제이네트워크 2014-12-09 41423
252 [리눅스서버] Modsecurity-apache 2.5.X 설치중 에러 server: /usr/lib/libxml2.so: wrong ELF class: ELFCLASS32 제이네트워크 2015-02-17 41445
251 [메뉴얼] 모바일 설교방송을 위한 MP4인코딩 제이네트워크 2011-05-23 41492
250 [리눅스서버] 우분투15.10 서버에서 SSH접속 안될 때 [에러-서버와 매치되는 outgoing encryption … 제이네트워크 2016-03-17 41499
249 [리눅스서버] 우분투18.04 에서 rc.local 파일 사용하기 제이네트워크 2019-11-17 41628
248 [메일] [아웃룩셋팅]제이네트워크 웹메일서버 사용시 아웃룩 셋팅법 제이네트워크 2014-05-20 41630
247 [리눅스서버] Linux 파일시스템 디버깅을 이용한 파일복구법 제이네트워크 2015-01-16 41717
246 [윈도우서버] 윈도우서버 com+ dll 등록방법] 제이네트워크 2019-04-11 41851
245 [리눅스서버] mkfs로 포맷이 안되는 경우 (오류 dev/sdb2 is apparently in use by the system; will not mak… 제이네트워크 2020-04-02 41872
244 [기타] 2015년 개정된 사이트에서 전자세금계산서(국세청)를 발행시 설치해야 할 Act… 제이네트워크 2015-03-04 41873
243 [기타] [CloudFlare]클라우드플레어 사용시 클라이언트 실제 IP ADDRESS 찾기 제이네트워크 2019-01-19 41953
242 [리눅스서버] 리눅스에서 하드웨어 사양 알아보기 제이네트워크 2012-11-19 42083
241 [윈도우미디어] 미디어 플레이어를 업그레이드 한 뒤부터 동영상이 플레이 되지 않습니다. 관리자 2008-12-08 42109
240 [스크립트언어] [php]php-5.3.x 버전 부터 Zend Guard Loader 설치 제이네트워크 2015-11-06 42109
239 [리눅스서버] Linux 로그파일의 종류 제이네트워크 2015-01-16 42110
238 [DB] [Mysql] MYSQL-InnoDB-데이터-복구-방법 제이네트워크 2016-12-11 42139
237 [리눅스서버] vsftpd 서비스에서 ncftp -R 옵션 작동 안할때 제이네트워크 2012-10-26 42190
236 [기타] 한글로 된 파일명을 가진 파일이 다운로드 되지 않을때 관리자 2011-06-02 42197
235 [리눅스서버] CentOS(리눅스)버전, 혹은 APM(apache, php, mysql) 버전 확인하려고 할때 사용하는 … 제이네트워크 2015-09-07 42255
234 [리눅스서버] 리눅스 서버에서 32bit 와 64bit를 알아보는 명령어 (1) 제이네트워크 2012-12-03 42276
233 [리눅스서버] CentOS 7.x vsftpd 자신의 홈디렉토리 상위폴더 접근막기 (2) 제이네트워크 2016-06-01 42280
232 [기타] 윈도우 메신저 삭제하기 관리자 2011-06-10 42281
231 [기타] [워드프레스]영문으로 설치된 워드프레스 한글화 하기 제이네트워크 2014-06-06 42309
230 [스크립트언어] [php-openssl] php-4.4.x openssl 추가 모듈 설치 제이네트워크 2015-12-01 42336
229 [DB] mysql 설치후 시작에러 발생시 관리자 2011-10-13 42383
228 [윈도우미디어] 미디어 플레이어 10은 어떻게 삭제합니까? 관리자 2008-12-08 42483
227 [리눅스서버] 리눅스 서버 패스워드 암호 풀기 관리자 2011-06-17 42512
226 [리눅스서버] [Apache 웹서버]apache2에서 geoip 적용하기 제이네트워크 2016-08-26 42561
 1  2  3  4  5  6  7  8  9  10