I'm hosting a HTTP server from home. I'm concerned about security issues since the machine has some personal files in it.

I have forwarded data from external IP port 80 to my IP at port 80. The website seems to work without adding an inbound exception to port 80 at the Win 7 firewall.

The HTTP server itself is called "Netty" - it comes out of the box with Play framework -applications. I haven't configured it at all.

I'm asking for general practices and pitfalls as how to make sure no attackers can access my computer/personal files, aside from good programming practices?

closed as too broad by Steffen Ullrich, schroeder, Xander, Mark, Stephane Jul 6 '15 at 7:10

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • This is a broad question and im pretty new to this, but i would gladly accept any keywords or links to learning material on the subject. – user80317 Jul 5 '15 at 13:16

When I hear this question, my first response is don't. If you are at all concerned about your personal network and your personal data, don't expose any part of it directly to the internet by hosting services.

If you feel you must, here are some steps:

  • Host the website on an entirely separate machine with nothing else on it
  • Put that machine on a DMZ (most routers allow you to set up a basic DMZ) so that there's no direct connection from the machine to your internal network
  • Have backups
  • Properly configure the router
  • Further segment with a hardware-based firewall to mitigate pivoting to your network as well as compromised services from sending spam and malware

This is not to deter you from learning but rather to serve as a helpful warning. Furthermore, this does not cover proper permissions on the host, ensuring your code is resilient to attack, and other components of CIA (confidentiality, integrity, and availability).

  • 1
    I would go further, and suggest you should just get your website hosted by a hosting company. With the cloudy world we live in today, hosting is cheaper than ever. – Aron Jul 6 '15 at 2:53

Not the answer you're looking for? Browse other questions tagged or ask your own question.