이전 목록 다음

PHP 5.4 + 그누보드 5.2.9 사이트를 PHP 8 이상으로 올려야 하는데, 현실적인 방법 문의

안녕하세요. 대학 기관 서버에서 운영 중인 사이트 때문에 문의드립니다.

대학 기관 보안 점검에서 "PHP 8.1 미만 사용 서버는 외부 접속 불가" 판정을 받았습니다.
외부 공개를 하려면 PHP를 8.1 이상으로 올려야 합니다.

[상황]
- 서버: CentOS 7 (지원 종료 OS), Apache 2.4.6, MariaDB 5.5.68
- PHP: 5.4.16 - 그누보드: 5.2.9.8.3
- 사이트 구성: 소개 페이지 + 로그인 + 게시판 1개 정도의 작은 사이트입니다. 자체 PHP 파일 몇 개가 그누보드 common.php를 불러서 로그인·회원 조회를 하고, 게시판은 그누보드 게시판을 그대로 사용합니다.
- 서버를 새로 구성하거나 OS를 바꾸기는 당장 어렵고, VM 스냅샷도 없는 환경입니다.

[저희가 세운 방법]
1. PHP 8.3을 기존 PHP 5.4와 별도 경로에 설치 (php-fpm)
2. 그누보드 5.6.48을 새 폴더에 풀고 기존 data 폴더만 복사
3. 관리자 페이지 DB 업그레이드 실행
4. 사이트 폴더만 PHP 8.3으로 연결하고 PHP 5.4는 끔

[문의드리고 싶은 것]
1. 이렇게 5.2.9에서 5.6.48로 한 번에 올리는 방식이 현실적으로 괜찮은지, 아니면 더 안전하거나 권장하는 방법이 있는지요?
2. 이 정도 규모의 사이트라면 5.6.48로 올리는 것과 그누보드7로 새로 구축하는 것 중 어느 쪽을 권하시나요?
3. 위에서 직접 처리한 부분(회원 비밀번호, 누락 컬럼)에 대해 공식적인 처리 방법이 있다면 알려주시면 감사하겠습니다.
4. 혹시 이런 구버전 업그레이드를 유료로 지원하는 서비스가 있는지도 궁금합니다.

방향을 확인하고 싶어서 질문드립니다. 감사합니다.

답변 9개

버전 차이가 크니 그누 최신에 다시 커스텀 반영하는 식으로 업그레이드 후 이전하시면 될 듯.
1. 이렇게 5.2.9에서 5.6.48로 한 번에 올리는 방식이 현실적으로 괜찮은지, 아니면 더 안전하거나 권장하는 방법이 있는지요?
      =>  그냥 5.6.48 를 설치하고 5.2.9 의홈페이지 디자인을 입히는것을추천
2. 이 정도 규모의 사이트라면 5.6.48로 올리는 것과 그누보드7로 새로 구축하는 것 중 어느 쪽을 권하시나요?
  ==> 5.6
추천 이유
                유지보수비용이 적음
3. 위에서 직접 처리한 부분(회원 비밀번호, 누락 컬럼)에 대해 공식적인 처리 방법이 있다면 알려주시면 감사하겠습니다.
   ==>공식적인 방법은 모르게고
           소스에 5.2 로그인과 5.6 로그인 을 다넣고 로그인 할때에 교차 채크해서 5.6 비번을 새로 만드는것을 추천
4. 혹시 이런 구버전 업그레이드를 유료로 지원하는 서비스가 있는지도 궁금합니다.
https://sir.kr/jobs/requests
의뢰 하시면 50만원~ @ 처리해주실분이 75명이나 대기중입니다

 
그누5 최신버전 설치후 디비/데이타이전 하는것으로 권장합니다 ~

사실상 위에 주된내용의 불안요소는

1. 기존 회원정보

2. 게시판의 게시물

3. 게시물내에 업로드되어있는 썸네일 및 파일들

총 3개로 판단되기때문에 사실상 만약에 저라면 어차피 해야될거

1. 최신버전으로 한번에 올리며 관리자 DB 업그레이드를 실행함

2. Mysql 버전또한 최신버전으로 업그레이드 해서 처리함

위 두개방식으로 처리하는게 향후 유지보수나 일부 업그레이드로 인해 또 똑같은 일을 겪게될 예정이라면

최신버전으로 모두 올리시는게 나아보입니다.

페이지 양도 적고 자체 PHP 파일만 점검하면되기때문에 본인이 만든 파일이라면

변경된 요소 또는 에러 요소만 검색해 수정하는게 나아보이거든요.

그리고 그누보드 7 같은경우 아직까진 사용기간이 길지않아 대부분을 AI에게 기대거나

또는 디버깅모드로 처리하는경우가 많아서. 자료가 가장많은 그누보드 5 로 일단 채택하는게 안정성면에서도 나아보입니다.

그리고 회원 비밀번호같은경우나 누락컬럼같은경우에 DB 마이그레이션을 처리하면 대부분이 해결되지만.

그럼에도 문제가 생긴다면 랜덤비밀번호로 일단 임의 생성후 고지를 통해 변경하면 어떨까 싶네요.

기존에 이미 했어야 하는걸 안한 거라서 편법 보다는 정상적인 방법으로 진행하시는걸 추천드립니다.
php 도 버전업 하시고, 그누보드5 솔루션도 버전업 하거나 기존 취약점 모두 패치하세요.
한번은 번거롭게 작업해야 할 큰 숙제 같은거라서 지금 하시면 다음번 보안 패치때 덜 번거로울겁니다.  
 
PHP8.2 이상 셋팅하세요
글고 그누보드로 제작된사이트를 백업된것을 업데이트  하시고 문제점잇으면 그때해결해가는쪽으로 해보시기바랍니다.
만약 그누보드 패치 까지 해야한다면 노가다 작업을 많이 해야할듯 으로보입니다.

어차피 하실거면 신규나 이전이 답입니다.
리눅스때문에 저는 신규 구매를 선택할 수 밖에 없었습니다.
한대로는 해결이 안되겠더라구요.
임대서버 잠시 빌려서 옮겼다가 다시 오는 방법도 고려해 보세요.
그누5에서 최신버전으로 가는것은 껌(?)입니다.ㅎㅎ
그누4에서 그것도 커스텀 여러군데 한것은 노답입니다.
지금 자동이전솔루션 쳇하고 클로드에게 작업시키고 있는데
야들도 헤매고 있어요.
차라리 제가 노과다하는게 편하겠다는 생각이 듭니다.

오늘까지 시켜보고 안되면 수작업해야겠어요.ㅠㅠ

1. 별도로 커스텀하신부분 (페이지 및 게시판)이 적기 때문에 백업후 최신버전 재설치 하시면됩니다.
2. 그누보드7 직접 사용은 무리 입니다. 많은 부분이 5와 다릅니다.
3. 비밀번호는 자동으로 변환되지만 다음 게시물을 참조해보세요. https://sir.kr/boards/g5_tip/9410
4. 의뢰게시판으로 가시면 대략 30 미만으로 작업 가능하실거에요. 제 프로필 보시고 저에게 문의주셔도 됩니다^^;
안녕하세요. 비슷한 PHP·그누보드 업그레이드 작업을 해본 경험이 있어 답변드립니다

1. 세우신 방법이 맞습니다. 그누보드5는 5.2.9에서 최신 버전으로 한 번에 올리고 관리자의 DB 업그레이드를 실행하면 됩니다. 스냅샷이 없으니 DB 덤프와 파일 전체 백업을 먼저 해 두세요. 바로 전환하지 말고 별도 포트에서 테스트한 뒤 넘어가시길 권합니다. 문제는 그누보드보다 자체 PHP 파일에서 날 가능성이 큽니다(mysql_*, each() 등 PHP 8에서 사라진 함수).
2. 기한과 규모를 보면 5.6이 낫습니다. G7은 사실상 새로 구축하는 일입니다. 다만 CentOS 7 자체가 다음 점검에서 지적될 수 있으니, 서버를 교체할 때 G7을 검토하시면 됩니다.
3. 비밀번호는 구형 해시로 로그인하면 새 방식으로 자동 변환되니 따로 손대실 필요가 없습니다. 누락 컬럼은 DB 업그레이드를 실행하는 게 공식 방법이고, 그래도 남는 부분만 원본 스키마와 대조해서 추가하시면 됩니다.
4. 유료로 해주는 곳이 있습니다. 의뢰 게시판이나 크몽 같은 곳에서 구하시면 될것 같습니다.

답변을 작성하려면 로그인이 필요합니다.