SSL 인증서 가 사이트 서버 IP 를 노출 시 키 지 않도록 하 세 요.

2732 단어
저 희 는 보통 cdn 을 서버 ip 에 설치 하여 사이트 나 백 엔 드 프로그램 을 가속 화하 고 방어 합 니 다.그러나 nginx 는 디자인 에 작은 결함 이 있 습 니 다. ssl 인증서 가 사이트 의 원래 IP 를 누설 하여 SSL 인증서 가 사이트 서버 IP 를 노출 시 키 지 않도록 합 니 다. SSL 인증서 가 사이트 서버 IP 를 노출 시 키 지 않도록 합 니 다.
원 리 는 Nginx 로 사 이 트 를 배치 합 니 다. 기본 또는 부정 확 한 설정 에서 사 이 트 는 ssl 을 열 고 ip 의 443 포트, 즉 ip: 443 을 직접 방문 합 니 다. Nginx 는 기본 사이트 의 ssl 인증 서 를 되 돌려 주 고 이 ip 에 대응 하 는 도 메 인 이름 을 간접 적 으로 쓸 수 있 습 니 다.
원 리 는 ip 의 443 포트 에 clienthello 를 보 내 는 것 입 니 다. 상대방 이 답장 한 server hello 에는 ssl 인증서 가 있 고 ssl 인증서 에 있 는 comon name 에는 도 메 인 이름 정보 가 있 습 니 다.이렇게 하면 이 ip 의 도 메 인 이름 을 분석 할 수 있 습 니 다.그래서 더 정확히 말 하면 IP 의 443 포트 가 도 메 인 이름 을 드 러 낼 수 있 습 니 다.
동작 이 좀 더 크 면 기계실 의 ip 단 을 대량으로 스 캔 하여 해당 하 는 도 메 인 이름 - ip 의 다 중 값 맵 표를 통계 합 니 다.앞으로 도 메 인 이름 에 대응 하 는 소스 사이트 ip 를 찾 으 려 면 이 시 계 를 찾 으 면 됩 니 다. 이것 은 흑 산 이 즐겨 하 는 일 입 니 다.
또한 많은 사이트 에서 cdn 을 끼 워 놓 았 는데 도 소스 IP 에 맞 을 수 있 는 이유 이기 도 합 니 다.
해결 방법 IP 직접 접근 금지
IP 사이트 직접 방문 금지
server {
  listen       80 default_server;
  listen       [::]:80 default_server;
  server_name  _;
  return 444;

} IP 에 서명 한 SSL 인증 서 는 444 인증 서 를 되 돌려 주 는 목적 은 접근 하기 위 한 것 이 아니 라 Nginx 의 이 결함 을 피 하 는 것 입 니 다.자체 서명 한 IP SSL 인증 서 를 만 드 는 데 는 원본 Mkcert https://myssl.com/create_test_cert.html) 도 구 를 사용 할 수 있 습 니 다. Mkcert 는 사용 하기 가 좀 번 거 롭 거나 테스트 인증서 의 온라인 웹 페이지 도 구 를 사용 할 수 있 습 니 다. https://myssl.com/create_test_cert.htmlSSL 인증서 가 노출 되 지 않도록 사이트 서버 IP 가 노출 되 지 않도록 사이트 서버 IP 가 도 메 인 이름 을 작성 하 는 위치 에 IP 주 소 를 입력 하고 생 성 단 추 를 누 르 면 인증서 가 아래 에 자동 으로 테스트 되 며 각각. pem 파일 과. key 파일 로 저 장 됩 니 다. 그리고 nginx 에 "return 444" 를 설정 합 니 다. 비슷 한 설정 은 다음 과 같 습 니 다.
{listen 80 ;listen 443 ssl http2 default_server;server_name ip;
#HTTP_TO_HTTPS_END
ssl_certificate    xxxx.pem;
ssl_certificate_key   xxxx.pem;
ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;

return 444;
} 합 법 적 인 IP 사이트 의 SSL 인증 서 를 구 매 하 는 데 적은 돈 을 들 여 합 법 적 인 IP SSL 인증 서 를 nginx 에 설정 합 니 다. IP 인증 서 는 보통 200 정도 입 니 다.
돈 을 넣 으 면 세상 이 손 쉽게 닿 을 수 있다.
지정 한 cdn 의 IP 만 Nginx 에 접근 할 수 있 습 니 다. 지정 한 cdn 의 IP 만 접근 할 수 있 습 니 다. 네트워크 에 아무 도 쓸 리 지 않도록 합 니 다. 텐 센트 클 라 우 드 CDN 세그먼트 의 경우 Nginx 사이트 설정 파일 에 다음 과 같이 추가 합 니 다.
location / {allow 58.250.143.0/24;allow 58.251.121.0/24;allow 59.36.120.0/24;allow 61.151.163.0/24;allow 101.227.163.0/24;allow 111.161.109.0/24;allow 116.128.128.0/24;allow 123.151.76.0/24;allow 125.39.46.0/24;allow 140.207.120.0/24;allow 180.163.22.0/24;allow 183.3.254.0/24;allow 223.166.151.0/24; deny all;}사용 한 CDN 업 체 의 문 서 를 찾 아 보고 새로운 IP 세그먼트 업데이트 가 있 으 면 추가 합 니 다.

좋은 웹페이지 즐겨찾기