WordPress 파일 권한: 안전한 웹사이트 및 웹 서버 권한 구성 가이드
게시 됨: 2020-07-02WordPress는 PHP를 실행하는 모든 운영 체제에서 거의 실행할 수 있습니다. 그러나 대부분의 WordPress 웹 사이트는 Linux에서 실행됩니다. 따라서 Linux 파일 권한을 이해하는 것이 중요합니다.
파일 권한을 올바르게 얻는 것이 중요합니다. 잘못된 파일 권한을 설정하면 웹사이트가 공격을 받을 수 있습니다. 잘못된 파일 권한으로 인해 권한이 없는 사용자가 잠재적으로 민감한 파일 및 데이터에 액세스할 수 있습니다. 그런 다음 이러한 데이터는 더 큰 공격을 위한 디딤돌로 사용될 수 있습니다.
WordPress 관리자로서, 특히 Linux를 처음 사용하는 경우 파일 권한이 다소 어려워 보일 수 있습니다. 두려워하지 마십시오! 이 가이드는 처음부터 Linux의 파일 권한이 무엇인지 설명합니다. 또한 Linux 파일 권한이 WordPress 웹사이트에 어떻게 적용되는지 설명합니다.
내용의 테이블
- 파일 권한이란 무엇입니까?
- 권한 그룹
- 권한 유형
- 권한 표현
- 권장 WordPress 파일 권한
- WordPress 파일 권한을 수정하는 방법
- 공유 호스팅 서비스에서
- FTP를 통해
- SSH를 통해
- 보너스 팁: 파일 권한 이상의 보안
파일 권한이란 무엇입니까?
권한 그룹
그것은 모두 누구로 시작됩니다. 다른 운영 체제와 마찬가지로 Linux에는 사용자 및 그룹 개념이 있습니다. 파일에 액세스할 수 있는 사람을 정의할 때 Linux 시스템의 각 파일 및 디렉터리에는 세 가지 권한 그룹이 있습니다.
- 소유자
- 각 파일 또는 디렉토리에는 소유자가 있습니다.
- 소유자 권한은 파일 또는 디렉토리의 소유자에게만 적용됩니다. 그들은 다른 사용자의 행동에 영향을 미치지 않습니다.
- 그룹
- 각 파일 또는 디렉토리에는 액세스 권한이 부여된 사용자 그룹 이 할당될 수 있습니다.
- 그룹 권한은 파일 또는 디렉토리에 할당된 그룹에만 적용됩니다. 그들은 다른 사용자의 행동에 영향을 미치지 않습니다.
- 다른
- 각 파일 또는 디렉토리는 "다른 모든 사람"이 갖는 권한을 정의할 수 있습니다. 즉, 소유자 또는 우리가 설정한 그룹 을 제외하고.
- 다른 권한 은 시스템의 다른 모든 사용자에게 적용됩니다. 이것은 무의식적으로 모든 사람에게 액세스를 허용할 수 있으므로 가장 보고 싶은 권한 그룹입니다.
권한 유형
이제 파일이나 디렉토리에 대한 액세스 권한이 있는 사람 을 지정하는 방법을 알았으므로 파일 또는 디렉토리에 대해 각 소유자 , 그룹 및 기타 에게 어떤 종류의 권한을 부여할지 선택해야 합니다. 다음은 권한 그룹 ( owner , group , other )에 부여할 수 있는 권한 유형 입니다.
- 읽다
- 읽기 권한 유형은 파일의 내용을 읽을 수 있는 사용자의 능력을 나타냅니다.
- 쓰다
- 쓰기 권한은 파일 내용을 작성 및/또는 수정할 수 있는 사용자의 능력을 나타냅니다.
- 사용자가 내용을 읽을 수 있는 능력 없이 파일에 쓸 수 있도록 허용하는 것이 가능합니다.
- 실행하다
- 실행 권한은 스크립트와 같은 파일을 실행하는 사용자의 기능에 영향을 줍니다.
- 실행 권한은 또한 사용자가 디렉토리의 내용을 볼 수 있도록 합니다.
권한 표현
이제 권한이 작동하는 방식을 이해했으므로 Linux 권한이 실제로 어떻게 표시되는지 살펴보겠습니다. 파일 권한은 일련의 3자리 숫자로 저장됩니다. 그러나 문자로 표시될 수도 있으므로 조금 더 읽기 쉽습니다. 먼저 이 숫자가 의미하는 바를 이해합시다.
- 첫 번째 숫자
- 소유자 에게 부여된 권한
- 두 번째 숫자
- 그룹 에 부여된 권한
- 세 번째 숫자
- 다른 사람에게 부여된 권한( 소유자 와 그룹 을 제외한 모든 사람)
각 숫자는 앞에서 논의한 하나 이상의 권한 유형 조합에 해당합니다. 이것을 시각화하면 훨씬 쉽게 이해할 수 있습니다. 각 권한 유형 에는 각 권한 그룹 에 대해 함께 추가 되는 가중치 가 있습니다.
혼란스러운? 머리를 감싸는 데 시간과 약간의 연습이 필요할 수 있습니다. 그 동안 다음은 각 권한 그룹 에 할당할 수 있는 모든 가능한 파일 권한에 대한 표입니다.
숫자 | 편지 | 설명 |
---|---|---|
0(0+0+0) | --- | 접근 금지 |
1(0+0+1) | --엑스 | 실행하다 |
2(0+2+0) | -ㅁ- | 쓰다 |
3(0+2+1) | -wx | 작성 및 실행 |
4(4+0+0) | 아르 자형-- | 읽다 |
5(4+0+1) | 수신 | 읽기 및 실행 |
6 (4+2+0) | ㄹㅇ- | 읽고 쓰기 |
7 (4+2+1) | rwx | 읽기, 쓰기 및 실행 |
구체적인 예를 보려면 644 파일 권한은
- 파일 또는 디렉토리를 읽고 쓸 수 있는 소유자 권한
- 그룹 에 파일 또는 디렉토리를 읽을 수 있는 권한이 있습니다.
- 다른 사람 은 파일 또는 디렉토리를 읽을 수 있는 권한이 있습니다.
일반적으로 사이에 공백 없이 표시되고 시작 부분에 추가 – 또는 d 가 있는 이러한 값을 볼 수 있습니다. – 는 일반 파일을 나타냅니다. d 는 디렉토리를 나타냅니다. 다음은 Linux ls -la 명령을 사용하여 디렉토리의 파일을 나열하는 예입니다.
$ ls -la 총 0 drwxr-xr-x 4 사용자 그룹 128 5월 25일 23:25 . drwxrwxrwt 8 루트 휠 256 5월 25일 23:25 .. drwxr-xr-x 2 사용자 그룹 64 5월 25일 23:25 디렉토리 -rw-r--r-- 1 사용자 그룹 0 5월 25일 23:25 file.txt
권장 WordPress 파일 권한
잘못된 WordPress 파일 권한을 설정하면 의도하지 않은 다른 사용자에게 실수로 액세스 권한을 부여할 수 있습니다. 최악의 시나리오에서는 공격자가 액세스할 수 없는 중요한 파일의 내용을 변경할 수 있습니다. 또한 인터넷의 모든 사용자가 WordPress 설치 내에서 중요한 파일을 읽을 수 있습니다.
이것이 WordPress 파일 권한을 777 ( -rwxrwxrwx )로 설정하면 안 되는 이유입니다. 이렇게 하면 해당 파일을 제어할 수 있는 위치에 있는 모든 사람에게 전체 읽기, 쓰기 및 실행 액세스가 허용됩니다. 이것은 FTP 또는 SSH를 통해 변경하는 제3자일 수도 있고 업로드 양식을 통한 공격자일 수도 있습니다.
반대로 WordPress가 작업을 수행하기에 너무 제한적이지 않도록 주의해야 합니다. WordPress 자체뿐만 아니라 테마 및 플러그인은 종종 여러 파일을 안전하게 변경해야 합니다. 예를 들어 WordPress가 보안 취약점으로부터 사이트를 안전하게 보호하기 위해 자동 업데이트됩니다.
따라서 논쟁을 위해 444 (-r–r–r–)의 권한으로 인해 WordPress 웹 사이트가 오작동할 수 있습니다. 444 WordPress 를 사용하면 읽기만 허용 되므로 자동 업데이트는 실패 합니다. 즉 , 읽기 전용 권한( 444 또는 r–r–r–)으로 WordPress를 실행할 수 있습니다. 그것은 매우 안전한 설치가 될 것입니다. 그러나 앞서 언급한 제한 사항을 고려해야 합니다.
일부 관리 WordPress 호스팅 제공업체는 즉시 이를 지원합니다. 이러한 권한으로 WordPress를 실행하려면 먼저 스테이징 환경에서 시도하십시오.
워드프레스에서 권장하는 파일 권한은 다음과 같습니다.
유형 | 번호 | 편지 | 설명 |
---|---|---|---|
디렉토리 | 755 | drwx-wx-wx | 워드프레스 설치 디렉토리 |
파일 | 644 | -rwxr--r-- | WordPress 코어, WordPress 테마 및 플러그인(일부 테마 및 플러그인에는 예외가 적용될 수 있음) |
wp-config.php | 600 | -rw------- | 워드프레스 구성 파일 |
.ht액세스 | 644 또는 600 | -rw-r--r-- -rw------- | Apache HTTP Server 구성 파일(Nginx 또는 Apache HTTP Server 이외의 웹 서버를 실행하는 경우 적용되지 않을 수 있음) |
WordPress 파일 권한을 수정하는 방법
호스팅 환경은 다르지만 항상 WordPress 파일 권한을 제어할 수 있습니다.
공유 호스팅 제어판을 통해 WordPress 파일 권한 수정
공유 호스팅을 사용하는 경우 cPanel 또는 Plesk와 같은 일부 제어판에 액세스할 수 있습니다. 이 경우 WordPress 사이트에서 파일 권한을 수정하기 위해 수행해야 하는 단계에 대해 호스팅 제공업체에 확인하십시오.
FTP를 통해 WordPress 파일 권한 수정
FileZilla 또는 Cyberduck과 같은 FTP 클라이언트를 통해 WordPress 파일 권한을 쉽게 수정할 수 있습니다. 다음 스크린샷은 Cyberduck에서 가져온 것입니다. 권한을 변경하려는 파일 또는 디렉토리를 마우스 오른쪽 버튼으로 클릭하고 정보 를 클릭한 다음 권한 탭을 클릭하기만 하면 됩니다.
프로세스는 Filezilla와 비슷합니다. 파일을 마우스 오른쪽 버튼으로 클릭하고 파일 권한 을 선택하면 유사한 대화 상자가 표시됩니다.
SSH를 통해 WordPress 권한 수정
이미 SSH 클라이언트를 사용하고 있다면 Linux chmod 명령을 실행하여 파일 권한을 변경할 수 있습니다. 위와 동일한 예를 사용하여 wp-config.php 의 권한을 644 에서 600 으로 변경하려면 다음 명령을 사용합니다.
# WordPress 설치 위치로 디렉토리 변경 $cd /var/www/html # wp-config.php의 파일 세부 정보 나열 $ ls -la wp-config.php -rw-r--r-- 1 www-data www-data 7368 2019년 9월 2일 wp-config.php # wp-config.php의 권한을 현재 644에서 600으로 변경 $ chmod 600 wp-config.php # 변경 사항 확인 $ ls -la wp-config.php -rw------- 1 www-data www-data 7368 2019년 9월 2일 wp-config.php
적절하게 구성된 WordPress 파일 권한은 더 안전한 웹사이트를 의미합니다.
다룬 내용을 요약해 보겠습니다. 우리는 파일 권한을 통해 Linux 시스템에서 파일 또는 디렉토리에 액세스 및/또는 수정할 수 있는 사람과 방법을 지정할 수 있음을 확인했습니다. 또한 SFTP 클라이언트와 SSH를 통해 권한을 변경하는 방법에 대해서도 논의했습니다. 그러나 우리가 논의한 가장 중요한 것은 WordPress 웹 사이트에서 파일 권한을 올바르게 설정하는 데 주의를 기울여야 하는 이유 입니다.
처음에는 지루한 과정일 수 있지만 잘못된 파일 권한으로 인해 WordPress 웹사이트에 민감한 파일이 노출될 수 있습니다. 또한 공격자가 적절한 상황에서 심각도가 낮은 취약점을 더 위험한 취약점으로 확대 할 수 있습니다.
이제 Linux에서 파일 권한이 작동하는 방식과 WordPress 사이트의 보안에 미치는 영향을 더 잘 이해했으므로 이 정보를 사용하여 너무 자유로운 WordPress 파일 권한을 강화하십시오.
보너스 보안 팁: WordPress 파일 권한 이상
올바른 WordPress 파일 권한은 WordPress 보안과 관련하여 작업을 시작하기에 좋은 곳입니다. 그러나 걱정할 유일한 것은 아닙니다. WordPress 웹 사이트의 보안 상태를 개선하기 위해 해야 할 다른 작업은 다음과 같습니다.
- WordPress 활동 로그에 사이트에서 일어나는 모든 일을 기록하고,
- WordPress 파일 무결성 모니터 플러그인 사용,
- 강력한 WordPress 비밀번호 정책 시행,
- WordPress 웹 사이트에 이중 인증을 추가하십시오.
- 워드프레스 방화벽 설치 / 온라인 워드프레스 방화벽 서비스를 이용하세요.