본문 바로가기
반응형

1. 기본적으로 httpd.conf 등 LISTEN PORT를 이미 80으로 변경 한 상태를 가정


2. 80포트는 일반 사용자에게 막혀있다.
   1) 사용하기 위해선 root 권한으로 실행시켜야 한다.
   2) Root권한으로 바꾸기 위해선 root 계정으로 로그인하거나 sudo명령어를 이용해야 한다.
        I. Root 계정이 필요함


3. OHS는 아파치 기반으로 만들어짐

    1) .apachectl은 (그냥 apachectl도 있으니 헷갈리지 않기) 아파치 하이퍼텍스트 전송 프로토콜의 앞단이다.
        I. 이 프로그램은 아파치 httpd 데몬을 조정하도록 돕는다.
        II. httpd.conf 파일으로 값을 셋팅할 수 있다.
        III. https://httpd.apache.org/docs/2.4/ko/programs/apachectl.html 자세한 내용은 해당 주소 참고
    2) 80포트는 유저에게 권한이 없고, 포트는 apachectl 을 이용해 개방하므로 apachectl 에게 권한을 부여해야한다.


4. .apachectl의 소유자를 변경한다.
    1) chown root:그룹명(=was계정그룹) .apachectl
        I. chown 명령어는 파일의 소유권을 변경할 수 있다.
        II. chown <유저> <파일> / chown :<그룹> <파일> / chown <유저>:<그룹> <파일> 의 형식이 있다.
        


5. .apachectl의 실행권한을 변경한다.
    1) chmod 6750 .apachectl
        I. 권한비트가 4자리일 때 맨 앞자리는 특수권한에 대한 비트가 된다.
        II. 특수권한 비트는 특수권한 비트와 CHMOD 를 참고
    2) 특수권한 비트 6으로 setuid, setgid를 설정하여 일반 사용자가 root가 소유한 디렉토리/파일에 접근하여 실행권한을 잠시 얻어 실행시킬 수 있다.
    3) 실제 실행 한 뒤 ps -ef 로 살펴보면 사용자가 아닌 root에서 해당파일을 실행시키고 있는 것을 확인 할 수 있다.


위와 같이 root를 이용해 80포트 개방을 시도하였지만 되지 않는다면 추가 조치로 httpd.conf 를 수정해야 한다.
    1) httpd.conf 파일을 확인한다.
    2) <IfModule !mpm_winnt_moduel>
        User <was실행유저>
        Group <was실행유저그룹>
           </IfMoudle>
        - 대개 User만 표기되어 있으며, Group을 추가해주면 된다.
        변경 이유는 위 명령어 중 chown 으로 소유 유저를 root, 그룹을 was계정그룹(=was실행유저그룹) 으로 변경하였기             에 일치 시켜 줘야 한다.

 

 

결론 :

root 로 ohs 를 실행시켜야 하며, 

.apachectl 실행권한을 6750으로 변경하면된다.

728x90
반응형

한걸음 한걸음

개인적인 기록