OSX에서 어떤 녀석이 80포트를 사용하고 있나

2017. 12. 15. 16:5499. 정리전 - IT/19. OSX, XCODE

출처 : https://www.mkyong.com/mac/mac-osx-what-program-is-using-port-80/

OSX에서 어떤 녀석이 80포트를 사용하고 있나 알아보려면, 터미널 창을 열고

이하와 같이 입력시 PID가 출력됨

$ sudo lsof -i :80

Password:
COMMAND     PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
httpd     12649   root    5u  IPv6 0xede4ca21f607010b      0t0  TCP *:http (LISTEN)
httpd     12650   _www    5u  IPv6 0xede4ca21f607010b      0t0  TCP *:http (LISTEN)
httpd     12653   _www    5u  IPv6 0xede4ca21f607010b      0t0  TCP *:http (LISTEN)

결과로 나온 PID를 통해 어떤 프로그램이 사용하고 있나 알아보려면

$ ps u 12649
USER   PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND
root 12649   0.0  0.0  2463084   4020   ??  Ss    5:40PM   0:00.21 /usr/sbin/httpd -D FOREGROUND

$ ps u 12650
USER   PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND
_www 12650   0.0  0.0  2463084   1580   ??  S     5:40PM   0:00.01 /usr/sbin/httpd -D FOREGROUND

맥에서 이클립스 톰켓 플러그인에 80포트를 설정하면 아래와 같이 애러가 남

이유는 리눅스나 OSX같은 UNIX계열의 OS에서 1024포트 아래의 포트는 privileged 포트로 root계정이 아니면 사용할 수 없도록 설정되어 있기 때문임

이하의 링크로 들어가면 가능

출처 --> http://cheonbrave.blogspot.kr/2016/11/tomcat-80.html
1. 아래 위치로 이동!
cd /etc/pf.anchors/
2. 편집기 실행!
sudo vi com.pow
3. 아래 내용 작성후 저장
rdr pass on lo0 inet proto tcp from any to any port 80 -> 127.0.0.1 port 20559
4. 편집기 실행 !
sudo vi /etc/pf.conf
5. rdr-anchor "com.apple/*" 이 내용 아랫줄에 내용추가!
rdr-anchor "pow"
6. load anchor "com.apple" from "/etc/pf.anchors/com.apple" 이 내용 아랫줄에 내용 추가 후 저장 !
load anchor "pow" from "/etc/pf.anchors/com.pow"
7. 아래 명령 실행 !
sudo pfctl -f /etc/pf.conf
8. 아래 명령 실행 !
sudo pfctl -e