일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- fido
- apple
- SwiftUI
- MYSQL
- 앱리소스
- SSH
- 2FA
- MFA
- OTP
- 앱스토어
- git
- openssl
- SSL
- appres
- OSX
- Xcode
- MSYS2
- 애플
- albumbook
- 앨범북
- Nodejs
- kmip
- WebAuthn
- 안드로이드
- 인증
- Android
- SWIFT
- FIDO2
- css
- otpkey
Archives
- Today
- Total
인디노트
NginX 실행시 SELinux 에러에 대한 대처 본문
NginX 환경을 80 포트 혹은 443 포트를 이용하지 않고 특정 포트를 별도로 설정해서 사용하는 경우
SELinux 의 보안 정책에 위배되는 메시지가 표시되면 정상적으로 실행되지 않는다.
다음과 같이 현재 시스템의 방화벽의 포트 정보를 확인하여 NginX 에서 사용하려는 포트가 허용되는지 확인을 한다.
[root@localhost]# firewall-cmd --list-port
만약 해당 포트가 88 일 경우 다음과 같이 추가해 준다.
[root@localhost]# firewall-cmd --permanent --zone=public --add-port=8800/tcp
success
[root@localhost]# firewall-cmd --reload
success
NginX 를 실행하여 다음과 같은 종류의 에러를 발견한다면
“SELinux is preventing /usr/sbin/nginx from name_bind access on the tcp_socket port 8800“
이것은 SELinux 보안 정책의 http_port_t 에 해당 포트를 설정하지 않았기 때문이다.
다음과 같은 명령으로 현재 등록된 포트를 확인할 수 있다.
[root@localhost]# semanage port -l | grep http_port_t
http_port_t tcp 80, 443, 1443
다음과 같이 해당 포트를 추가해 준다.
[root@localhost]# semanage port -a -t http_port_t -p tcp 8800
이제 NginX 의 테스트 옵션으로 동작에 대한 검증을 확인 할 수 있다.
[root@localhost]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
반응형
'개발 플랫폼 및 언어' 카테고리의 다른 글
PAM 소스 컴파일 (0) | 2022.04.15 |
---|---|
PAM 기본 자료 (0) | 2022.04.14 |
특정 파일을 어디서 찾아 사용하는지 확인하는 방법 (0) | 2022.01.30 |
Git 이미 존재하는 폴더를 새로운 빈 레포지토리에 Push 하는 절차 (0) | 2022.01.09 |
GIT 이미 존재하는 폴더 새로운 레파지토리에 등록 (0) | 2021.12.11 |
Comments