programing

httpd 서버가 시작되지 않음 : (13) 권한이 거부 됨 : make_sock : 주소 [::] : 88에 바인딩 할 수 없습니다.

yoursource 2021. 1. 16. 10:53
반응형

httpd 서버가 시작되지 않음 : (13) 권한이 거부 됨 : make_sock : 주소 [::] : 88에 바인딩 할 수 없습니다.


centos 6에서 httpd 서버를 시작하려고합니다. 다음 오류가 발생합니다.

[root@machine ~]# service httpd start
Starting httpd: (13)Permission denied: make_sock: could not bind to address [::]:88
(13)Permission denied: make_sock: could not bind to address 0.0.0.0:88
no listening sockets available, shutting down
Unable to open logs
                                                           [FAILED]

포트 88도 확인했지만 사용하지 않습니다. semanage 로도 확인 했지만 도움이되지 않았습니다.

어떤 도움을 주시면 감사하겠습니다.


"루트"가 아닌 실행중인 것 같습니다. 루트 만이 포트 (80)에 바인딩 할 수 있습니다. conf / httpd.conf 파일의 Listen 라인에서 구성을 확인하고 포트를 더 높은 것으로 변경하십시오.


SELinux 권한이 없어서이 문제가 발생했습니다 . 기본적으로 SELinux는 apache / httpd 만 다음 포트에 바인딩하도록 허용했습니다.

80, 81, 443, 488, 8008, 8009, 8443, 9000

따라서 내 httpd.conf구성 Listen 88HTTP 포트 및 config.d/ssl.conf구성 Listen 8445TLS / SSL 포트에 대한 바인딩 은 해당 기본 SELinux 구성으로 실패합니다.

내 문제를 해결하기 위해 시스템의 SELinux 구성에 포트 88 및 8445를 추가해야했습니다.

  1. semanage도구 설치 :sudo yum -y install policycoreutils-python
  2. httpd에 포트 88 허용 : sudo semanage port -a -t http_port_t -p tcp 88
  3. httpd에 포트 8445 허용 : sudo semanage port -a -t http_port_t -p tcp 8445

터미널에서 루트 권한으로 다음 명령을 실행하십시오.

sudo /etc/init.d/apache2 start

웹 서버를 시작하려면 루트 여야합니다. 그렇지 않으면 비슷한 오류가 발생합니다.


이것은이 스레드의 어딘가에 Abdull의 답변에 추가되었습니다.

포트를 추가하는 대신 수정해야했습니다.

semanage port -m -t http_port_t -p tcp 5000

포트를 추가 할 때이 오류가 발생하기 때문에

ValueError: Port tcp/5000 already defined


내 centos 6.7 설치에서 루트로 httpd를 시작하는 것뿐만 아니라 xauth ( /usr/bin/xauth: timeout in locking authority file /.Xauthority기본 권한 거부 오류가 발생 함) 에서도 문제 가 발생했습니다.

# setenforce 0

두 문제를 모두 수정했습니다.


제 경우에는 먼저 포트 88을 사용하려고 시도했지만 httpd가 시작되지 않습니다.

아래 명령을 사용했습니다. 즉, 사용자 중 한 명이 제안한대로 추가 대신 수정하고 httpd를 실행할 수있었습니다.

semanage port -a -t http_port_t -p tcp 88

SELinux 비활성화

SELinux를 일시적으로 비활성화

sudo setenforce 0

httpd 서비스 다시 시작

service httpd restart

SELinux를 지속적으로 비활성화 (재부팅 후)

vi /etc/selinux/config

줄 추가 및 저장

SELINUX=disabled

루트 사용자 또는 sudo로 시작하면 정상적으로 작동합니다. 다음은 샘플 출력입니다.

[ec2-user@ip-172-31-12-164 ~]$ service httpd start
Starting httpd: (13)Permission denied: make_sock: could not bind to address [::]:80
(13)Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
                                                           **[FAILED]**
[ec2-user@ip-172-31-12-164 ~]$ sudo service httpd start
Starting httpd:                                            [  OK  ]
[ec2-user@ip-172-31-12-164 ~]$ sudo service httpd status
httpd (pid  3077) is running...

먼저 중단 된 httpd 인스턴스를 모두 종료 한 다음 Apache를 다시 시작하십시오.

service httpd restart

참조 URL : https://stackoverflow.com/questions/17079670/httpd-server-not-started-13permission-denied-make-sock-could-not-bind-to-ad

반응형