nginx를 사용하여 작은 웹 사이트를 실행 중입니다. 서버 수명이 길고 임의 DoS 공격을 피하기 위해 (아마도) 트래픽이 많지 않기 때문에 웹 서버가 포트 80 대신 대체 포트에서 수신 대기하도록 설정하는 것을 고려하고 있습니다.
대체 포트 (81, 8080 등)를 수신하면 실제로 공격이나 침입의 위험이 줄어 듭니까? 아니면 그것을 유지하는 부담이 이익보다 중요합니까? 이 경우 나중에 다른 웹 서비스를 설정할 경우 다른 웹 서비스에 대체 포트를 사용해야합니까?
답변
여기서 고려해야 할 두 가지가 있습니다.
- 사용자는 이름에 비표준 포트를 사용하는 것을 기억합니까? 기본적으로 포트 80이 표준이므로 URL에 입력 할 필요가 없습니다. 예를 들어,
http://superuser.com
포트 80 에서 실행되고 브라우저는 80을 입력 할 때의 포트라고 가정합니다. 입력하는 것과 다릅니다http://superuser.com:80
. 포트 8080에서 웹 서버를 실행하는 경우 사용자 는 을 입력해야합니다http://superuser.com:8080
. 보통 사용자는 기억하지 못할 것입니다. - 비표준 포트에서 웹 서버를 실행하면 DoS 공격으로부터 보호됩니까? 실제로는 아닙니다. 누군가 사이트를 실제로 중단시키고 싶다면 비표준 포트에서 실행해도 사이트가 중지되지는 않습니다. 공격자는 IP의 모든 포트를 검색하여 8080 (또는 원하는 항목)이 열려 있고 HTTP 요청에 응답한다는 것을 빠르게 발견합니다.
포트 변경과 같은 방법은 ” 불분명을 통한 보안 “이라고 하며 추가 작업과 불편이 귀중한 보안을 제공한다는 것은 의심의 여지가 있습니다.
답변
그렇습니다. 대체 포트를 설정하면 봇이 웹을 크롤링하여 결함이있는 웹앱을 찾는 경우 일반적으로 다른 포트를 보지 않기 때문에 실제로 공격의 위험을 줄입니다.
사람 공격자가 서버를 목표로하는 경우 nginx가 수신 대기중인 실제 포트를 쉽게 찾을 수 있습니다 (오픈 포트 스캔).
이러한 대체 포트를 사용하는 것은 드물기 때문에 (프록시 나 대체 웹 서버는 제외) 걱정없이 사용할 수 있다고 생각합니다.
그러나 이러한 대체 포트를 사용하면 “기본”방문자가 웹 사이트를 찾지 못하므로 http://yourserver.com:81/ 과 같은 URL을 사용하여 사람들에게 올바른 포트를 알려주거나 링크로 작성해야합니다 . ..
답변
Keltari에서 제공하는 두 가지에 대한 추가 고려 사항은 비표준 포트를 사용하면 달리 지정하지 않는 한 Google과 같은 검색 엔진 웹 크롤러가 웹 사이트를 간과 할 수 있습니다.
링크를 제공하는 사람을 제외한 모든 사람이 귀하의 웹 사이트를 찾기가 어렵다는 의도가 있다면 비표준 포트를 사용하는 것이 좋을 것 같지만 그렇지 않으면 표준 포트를 사용합니다.
답변
때에 따라 다르지. “소규모 사이트”의 용도는 무엇입니까?
-
다른 사람들이 사용할 예정이라면 표준 포트를 사용하는 것이 좋습니다. 대부분의 답변에서 언급했듯이 비표준 포트를 사용 하려면 사용자가 포트를 지정 해야 합니다 (예 : 포트 81-> yoursite.com:81). 표준 포트를 사용하는 경우 브라우저는 프로토콜 (http, https)에서 포트를 유추합니다. 재정의되지 않는 한 http : //는 일반적으로 포트 80이고 https : //는 일반적으로 포트 443입니다. 표준 포트를 사용하는 것이 좋습니다. 물론, 뒷마당에있는 집의 유일한 입구를 넣을 수는 있지만 방문자가 어떻게 거기에 있는지 알 수 있습니까?
-
귀하 만 사용하는 테스트 사이트 인 경우 두 가지를 스스로 물어보십시오.
- DNS 레코드 (도메인 이름)에 첨부됩니까? (DNS 참조가없는 서버는 공격이 훨씬 조용하다는 것을 알았습니다. 참고 : 더 안전한 것으로 간주하지 마십시오. 그렇지 않습니다. 공격자가 DNS를 통해 사용자를 찾기가 더 어려워집니다)
- 포트 및 / 또는 IP를 수동으로 입력해도됩니까?
TL; DR :
- 다른 사람이 사용 : 80/443 사용
- 개인 : 당신까지
답변
모든 포트에서 http 서버를 실행할 수 있지만 서퍼, 사용자가 포트를 기억하기가 어렵습니다.
공격이나 침입의 위험을 줄일 수 있지만 서버 보안 및 HTTP 서버 포트 80과 같은 다른 방법도 있습니다.