본문 바로가기

WEB/Apache,OHS

[OHS] OHS 포트 변경 [1024이하 80포트 사용]

OHS 11g에서 1024이하 port로 변경

su - root
cd {OHS_HOME}/ohs/bin

chown root .apachectl
chmod 6750 .apachectl

.이 중요함 .이 있는 apachectl 에 적용해야 함
(그냥 apachectl에 적용되지 않도록 주의)
 
httpd.conf에서 그룹명을 추가해준다
80포트 일 경우  group변경 꼭 해줘야 함
기존 내용 주석처리하고 해당그룹명 추가

 

 


 

OHS 12.1.3 에서 1024이하 port로 변경 (UNIX)

참고 글

 - http://blog.naver.com/dae0park/140201749344

 - https://dae0park.blog.me/220187493910

 

1. OHS 사용자 권한으로 변경 후 cap.ora 파일 생성

echo `id -ng`: bind > /tmp/cap.ora
ls -rtl /tmp/cap.ora
cat /tmp/cap.ora

-> 파일 내용은 Group ID : bind 형태 확인

 

 

2. root 계정으로 변경 후 hasbind 모듈 의 권한 변경

su -
cd /home/webserver/ohs12c/oracle_common/bin
chown root hasbind
chmod 4755 hasbind

ls -rtl hasbind 권한 확인

 

 

3. /etc/cap.ora 파일 생성 /tmp/cap.ora파일을 /etc 아래로 복사한 뒤 권한을 644로 변경해 준다

cp /tmp/cap.ora /etc/cap.ora
chmod 644 /etc/cap.ora

ls -rtl /etc/cap.ora 권한 확인

 

 

4. /tmp/cap.ora파일 삭제 

rm /tmp/cap.ora

 

5.  httpd.conf 에서 Listen 80으로 수정

6. 재기동 

 


 

Linux x86-64에 한하여

OHS 12.1.2 12.1.3 버전에 대해 1024 이하 포트 설정에 버그가 있음

버그 픽스 패치를 적용해야  1024이하 포트 사용 가능 

[OHS] [INCIDENT_ERROR:32] [OHS-9999] [worker.c] [host_id: localhost.localdomain] [host_addr: 127.0.0.1] [pid: 27950] [tid: 139625538037632] [user: khj] [VirtualHost: main] (13)Permission denied:  make_sock: could not bind to address [::]:80

 

패치 17533212를 적용

해당 패치는 $ ORACLE_HOME/oracle_common/bin/hasbind를 대체함

hasbind가 root 소유권으로 설정되어 있을 경우, 패치 적용할 시 에러 발생

hasbind  파일복사를 위해  일반 사용자로 소유자 변경 및 755 권한을 부여한다.

Patch 17533212:
Copy Action: Destination File "/home//ohs1213/ohs_home/oracle_common/bin/hasbind" is not writeable.
'oracle.ha, 12.1.2.0.0': 'hasbind'에서 '/home//ohs1213/ohs_home/oracle_common/bin/hasbind'(으)로 파일을 복사할 수 없음

Recommended actions: This patch requires some components to be installed in the home. Either the Oracle Home doesn't have the components or this patch is not suitable for this Oracle Home.

 

 

패치적용 후에 hasbind 권한 변경 다시 적용하기 

su - root
chown root hasbind
chmod 4755 hasbind

 

 


 

OHS 12.2.1.3 및 12.2.1.4 에서 1024이하 port로 변경

 

.launch 파일의 소유자 및 권한 변경

su - root
cd {OHS_HOME}/ohs/bin
chown root ./launch
chmod 4750 ./launch

해당 작업 마친 후 일반 계정으로 돌아오기

 

 

http.conf 내용 수정

User 및 Group 내용 명시
User ***
Group ***

Listen port 변경
#Listen 8000 -> 기존 내용 주석처리
Listen 80

 

UNIX 계열에서 80,443 Port는 Privileged Port이므로  root 권한으로 process가 기동되어야 함.

따라서 ps -ef 로 OHS 프로세스를 grep 할 시, 프로세스 소유자가 root 가 되어있는 것을 볼 수 있음.

또한, 로그 파일의 소유자 또한 root 로 되어있음.

root 권한으로 process가 기동됨에 따른 현상이며, 잘못된 상황이 아님.