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

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 383

번호 제   목   글쓴이 날짜 조회
343 [리눅스서버] SFTP 퍼미션 조정 및 chroot 설정으로 상위폴더 접근 제한하기 제이네트워크 2019-06-30 40127
342 [리눅스서버] SFTP 접속만 가능한 계정 만들기] 제이네트워크 2019-06-30 43811
341 [리눅스서버] CentOS7.x 버전에서 최신 node.js 설치하기 제이네트워크 2019-05-23 41908
340 [윈도우서버] 윈도우 설치 중 새 시스템 파티션을 만들거나 기존 시스템 파티션을 찾을 … 제이네트워크 2019-04-24 38241
339 [PHP] 그누보드5 서버이전 후 글 작성 및 member가입 작성안되는 경우 제이네트워크 2019-04-24 28945
338 [윈도우서버] 윈도우서버 com+ / dll 등록후 세션 로그아웃시 dll 적용안될 때 제이네트워크 2019-04-11 36272
337 [윈도우서버] 윈도우서버 com+ dll 등록방법] 제이네트워크 2019-04-11 36763
336 [윈도우서버] ERR_TOO_MANY_REDIRECTS 해결방법 제이네트워크 2019-03-30 41298
335 [리눅스서버] Wildcard SSL 인증서 설치시에러 [warn] _default_ VirtualHost overlap on port 443, 제이네트워크 2019-03-30 39210
334 [DB] MSSQL SERVER 테이블변경시 제한시간이 만료되었습니다. 라는 에러발생시 제이네트워크 2019-01-30 29866
333 [DB] MSSQL 1씩 자동증가값 제어(ID 사양 변경 안될 경우) 제이네트워크 2019-01-30 29960
332 [DB] mysql-5.7.x 이상 버전에서 비번 변경 후 에러가 나올 때 제이네트워크 2019-01-22 29752
331 [리눅스서버] mysqli.so php추가 모듈 설치 제이네트워크 2019-01-21 41432
330 [기타] [CloudFlare]클라우드플레어 사용시 클라이언트 실제 IP ADDRESS 찾기 제이네트워크 2019-01-19 37022
329 [리눅스서버] CentOs7 부팅시 rc.local 파일 실행되도록 설정 (1) 제이네트워크 2019-01-16 38720
328 [윈도우서버] iis 버전 버젼 version 확인 방법 제이네트워크 2019-01-14 35784
327 [윈도우서버] Windows 10 자동 업데이트 완전 끄기 제이네트워크 2019-01-11 31900
326 [윈도우서버] 윈도우서버 IIS7.5 다운로드 업로드 용량 늘리기 제이네트워크 2018-12-13 32893
325 [리눅스서버] CentOS7 SSH 접속포트 변경과 방화벽 오픈 제이네트워크 2018-12-10 38284
324 [기타] 크롬브라우저에서 플래시 항상허용후 설정값 저장하는 방법 제이네트워크 2018-12-01 32719
323 [DB] MSSQL2008 로그 줄이기 제이네트워크 2018-11-29 28113
322 [리눅스서버] NFS 연결오류시 mount.nfs: Input/output error 제이네트워크 2018-11-16 45481
321 [리눅스서버] [CentOS 7] Python 3을 Cent7에서 yum으로 인스톨 하는 방법 제이네트워크 2018-11-02 43225
320 [리눅스서버] [우분투서버 Ubuntu network device명 확인 및 변경] 제이네트워크 2018-06-21 43556
319 [윈도우서버] [윈도우10 원격데스크톱 오류 CredSSP 암호화 Oracle 수정 때문] 제이네트워크 2018-06-21 43896
318 [리눅스서버] CentOS7 SSH 실행방법 정리 제이네트워크 2018-06-16 41300
317 [기타] 윈도우7/윈도우10 winsxs 폴더 용량 줄이기 최적화 제이네트워크 2018-04-28 39186
316 [리눅스서버] VSFTP 에서 사용하는 port를 변경하기 제이네트워크 2018-04-26 52194
315 [리눅스서버] named 2차 네임서버로 zone transfer 권한 문제 제이네트워크 2018-04-13 40529
314 [리눅스서버] 리눅스 apache에서 동시 접속자 수 체크 제이네트워크 2018-03-30 42820
313 [메일] [다음- 스마트워크 MX 레코드 설정방법] 제이네트워크 2018-02-19 34038
312 [리눅스서버] swap 메모리 추가하기 제이네트워크 2017-12-07 35733
311 [DB] mtysql 5.7 이상버전에서 root 패스워드 변경시 제이네트워크 2017-11-25 28009
310 [윈도우미디어] 익명 사용자 인증 플러그 인 오류 때문에 Windows Media 서비스 시작할 수 없습… 제이네트워크 2017-11-25 30938
309 [리눅스서버] [리눅스서버] [리눅스서버]CentOS-6.9 yum 오류날때 제이네트워크 2017-11-08 35578
308 [리눅스서버] vsFTPd 사용시 디렉토리 목록 조회가 안될때 제이네트워크 2017-10-30 36962
307 [DB] [mysql] mysql 덤프파일 복구시 에러시 - Got a packet bigger than 'max_allowed_packet&… 제이네트워크 2017-09-14 27991
306 [PHP] 사이트별 allow_url_fopen허용해 주기 제이네트워크 2017-09-12 28645
305 [리눅스서버] [zip모듈 추가설치]php 컴파일 없이 zip 모듈 추가 설치 제이네트워크 2017-08-30 39108
304 [리눅스서버] [openssl]php에 openssl 추가모듈 설치하기 제이네트워크 2017-08-30 40521
 1  2  3  4  5  6  7  8  9  10