suPHP 적용사례 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

suPHP 적용사례 정보

suPHP 적용사례

본문

새로 서버를 구축하면서 suPHP를 적용했습니다.
suPHP는 폴더는 755, 파일은 644로 저장합니다.
보안이 취약한 707, 777로된 파일 퍼미션은 에러가 발생합니다.
예를들면, 이미지파일의 퍼미션이 707이나 777로 되어있으면 파일이 없는 것 처럼 보입니다.

suPHP를 적용한 서버에서 그누보드를 사용할때 파일 퍼미션 관련되서 에러가 발생함으로 아래와 같이 몇개 파일을 수정해야합니다.
간단히 설명하면 폴더 및 파일을 업로드할때 지정하는 퍼미션(707, 606) 부분을 없애주는 것입니다.

/cheditor4/insert_image.php
9번째줄 부터 아래 빨간색처럼 변경
@mkdir("$g4[path]/data/$g4[cheditor4]/");
@chmod("$g4[path]/data/$g4[cheditor4]/");

$ym = date("ym", $g4[server_time]);
define('SAVE_AS_DIRECTORY',  "$g4[path]/data/$g4[cheditor4]/$ym/");
@mkdir(SAVE_AS_DIRECTORY);
@chmod(SAVE_AS_DIRECTORY);

/adm/board_form_update.php
17번째줄 부터 아래 빨간색처럼 변경
// 게시판 디렉토리 생성
@mkdir($board_path);
@chmod($board_path);

// 디렉토리에 있는 파일의 목록을 보이지 않게 한다.
$file = $board_path . "/index.php";
$f = @fopen($file, "w");
@fwrite($f, "");
@fclose($f);

@chmod($file);


/bbs/write_update.php
131번째줄 부터 아래 빨간색처럼 변경
@mkdir("$g4[path]/data/file/$bo_table");
@chmod("$g4[path]/data/file/$bo_table");

214번째줄 아래 빨간색처럼 변경
chmod($dest_file);

/bbs/register_form_update.php
149번째줄 부터 아래 빨간색처럼 변경
@mkdir($mb_dir);
@chmod($mb_dir);

$dest_path = "$mb_dir/$mb_id.gif";
move_uploaded_file($_FILES[mb_icon][tmp_name], $dest_path);
chmod($dest_path);

참고로 그누보드를 새로 설치할 경우 utf8 버전으로 설치하며, 압축을 푼 다음 서버로 업로드하면 폴더 퍼미션을 707로 바꾸지 않아도 설치가 됩니다.

혹시라도 도움이 되시길....
추천
1

댓글 6개

불당님 오랜만입니다. ^.^

솔직히 속도는 그리 신경쓰지 않고 설치했습니다.
차이가 없으리라 생각됩니다.

제 다른 서버는 현재 Mod Security를 설치해서 사용중인데요... (제로보드 4를 사용하는 사람들이 아직 많아서요...)
그건 많이 느려지지요... 그래도 50개 정도의 크고 작은 사이트가 돌아가는데 운영하는데는 별 문제가 없습니다.

또 뵙지요...
잘 알고지내는 후배가 제 서버를 이용해서 호스팅 사업을 하고있는데 예전 제로보드4 때문에 하도 고생을 해서요...

제로보드4는 suPHP 사용을 하지 못합니다.
물론, 코드를 다 뜯어고치면 가능하겠지만요....

제로보드 XE는 전혀 문제가 없구요... 저는 그누보드를 좋아하는지라 해결방안을 찾다보니 가능하더라구요.
그래서 이번에 새로운 서버를 구축하면서 suPHP를 적용시켰습니다.
동일한 유저나 그룹이 아니면 페이지를 읽지 못합니다. 따라서 apache 기타 유저로 저장된 파일의 실행이 불가능하기 떄문에 보안부분에서는 많은 이점이 있을 것이라 생각됩니다.

또한, 707, 777 등의 파일퍼미션을 사용하지 못하게 합니다.
폴더는 755, 파일은 644를 사용하지요.

전혀 어렵지 않습니다.
담에 고려해 보시길...... 보안이 최고 중요하니까요...
추가로 아래 두개 파일

adm/member_form_update.php
adm/board_form_update.php

그리고, 영카트일 경우
adm/shop_admn/bannerformupdate.php
adm/shop_admin/categoryformupdate.php
adm/shop_admin/cententformupdate.php
adm/shop_admin/faqmasterformupdate.php
adm/shop_admin/itemeventformupdate.php
adm/shop_admin/itemformupdate.php
adm/shop_admin/onlinecalcformupdate.php

위 파일들의 폴더생성부분과 파일퍼미션 변경부분을 없애거나 아니면, 0707->0755, 0606->0644로 변경하면 됩니다.
전체 3,309 |RSS
그누4 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT