퍼미션 관련해서 관리자님께 건의 드립니다.
오랜 기간 그누보드를 사용하는 유저입니다.
먼저 그누보드 개발팀의 노고에 감사드립니다.
한가지 건의 드립니다.
그누보드는 일반적인 mod-php 상에서는 큰제가 없으나 fastCGI, php-fpm 등에서는 파일 퍼미션 등으로 인해 사용에 제약이 있습니다.
새로운 버전에서는 스킨, 기타 몇몇 파일들에 폴더생성 및 파일생성을 강제로 707, 606으로 지정한 것들을 변경하는 방법에 대해 심도있게 생각해 보심이 어떨까 생각합니다.
해외 많은 오픈소스 툴들이 이런 부분들에 제약없이 어떠한 호스팅 환경에도 큰 문제 없이 운영되고 있습니다. 잘 아시겠지만 fastCGI는 일반 아파치 계정으로 파일들이 생성되지 않음으로 mod-php에 비해 보안적인 부분에서 상당히 장점이 많으며, 심지어 유럽 유저들은 "mod-php는 아예 사용하지 말아라!" 라고 얘기하고 있는 상황입니다.
저도 해외에서 조그만 웹호스팅 회사를 운영하고 있습니다만, 한국분들의 요청으로 사이트들을 저희 서버로 옮기다 보면 아직까지도 '묻지마 777'을 많이 보게되어 안타까울 때가 많이 있습니다.
점차 웹호스팅 환경도 바뀌고 있는 상황이니 검토 부탁 드립니다.
감사합니다.
먼저 그누보드 개발팀의 노고에 감사드립니다.
한가지 건의 드립니다.
그누보드는 일반적인 mod-php 상에서는 큰제가 없으나 fastCGI, php-fpm 등에서는 파일 퍼미션 등으로 인해 사용에 제약이 있습니다.
새로운 버전에서는 스킨, 기타 몇몇 파일들에 폴더생성 및 파일생성을 강제로 707, 606으로 지정한 것들을 변경하는 방법에 대해 심도있게 생각해 보심이 어떨까 생각합니다.
해외 많은 오픈소스 툴들이 이런 부분들에 제약없이 어떠한 호스팅 환경에도 큰 문제 없이 운영되고 있습니다. 잘 아시겠지만 fastCGI는 일반 아파치 계정으로 파일들이 생성되지 않음으로 mod-php에 비해 보안적인 부분에서 상당히 장점이 많으며, 심지어 유럽 유저들은 "mod-php는 아예 사용하지 말아라!" 라고 얘기하고 있는 상황입니다.
저도 해외에서 조그만 웹호스팅 회사를 운영하고 있습니다만, 한국분들의 요청으로 사이트들을 저희 서버로 옮기다 보면 아직까지도 '묻지마 777'을 많이 보게되어 안타까울 때가 많이 있습니다.
점차 웹호스팅 환경도 바뀌고 있는 상황이니 검토 부탁 드립니다.
감사합니다.
|
댓글을 작성하시려면 로그인이 필요합니다.
댓글 8개
말씀하신 내용에 대해 알고 있지 못해 자세한 답변은 어려우나 만약, mod-php 이외의 사용시 서버의 설정이 바뀌어야 하는 부분이 있다면 적용하기가 어려울것 같습니다.
혹시, faceCGI 나 php-fpm 으로 mod-php 의 upload 방식과 같은 예제 PHP 코드가 있다면 알려주실수 있는지요?
따라서, 퍼미션 적용 부분만 코드를 변경하거나 (606->644, 707->755), 아니면 퍼미션을 지정한 부분을 삭제하면 됩니다.
물론, 그 상황에서도 파일 업로드 등은 전혀 문제 없습니다.
그 이유는 모든 폴더와 속성이 웹사이트의 고유 아이디와 그룹으로 저장되기 때문입니다.
방금 테스트를 목적으로 4s를 설치한 후 아래 파일들에서 퍼미션 606->644, 707->755로 변경한 후 업로드 등 모두 잘 되는 것을 확인 했습니다. 추가로 필요한 파일들을 발견하면 올리도록 하겠습니다.
/adm/board_copy_update.php
/adm/board_form_update.php
/adm/member_form_update.php
/bbs/register_form_update.php
/bbs/write_update.php
/bbs/move_update.php
/install/install_db.php
/lib/mobile.lib.php
/lib/thumbnail.lib.php
참고로 말씀 드리면 저는 영카트, 그누보드4 모두 fastCGI, 또는 suPHP환경에서 운영 중입니다.
감사합니다.
대다수의 일반 웹호스팅을 사용하는 분들에게는 오히려 업로드에서 에러가 발생하는 부분이라 생각이 됩니다.
설치할때 운영환경을 확인하고 그 상황에 맞게 퍼미션을 적용하거나, 또는 안하면 될 것 같습니다.
아래 혹시 참조가 될지 해서 올립니다.
<?php
$sapi_type = php_sapi_name();
if (substr($sapi_type, 0, 3) == 'cgi') {
echo "You are using CGI PHP\n";
} else {
echo "You are not using CGI PHP\n";
}
?>
data 디렉토리는 사용자가 직접 생성을 하므로 other 의 퍼미션이 반드시 7 로 설정되어야 하네요. (707 또는 777)
이렇게 되면 말씀 하신것과는 반대로 보안상 결함이 존재하게 됩니다.
이 data 디렉토리도 755 로 설정하여 웹에서 프로그램을 설치할 방법이 있을까요?
Other가 아닌거지요..
조금이나마 도움이 되었기를 바랍니다.