Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

What do I need to do to allow external access to my win seven IIS webpage? My internal webpage is hiding behind a router and a firewall (Windows firewall) I need to be able to address certain aspects on my hard disk in order to build the webpage externally. Graphics sitting on my hard disk are not accessible? I used localhost and inetpub. The graphic is sitting inetpub/wwwwroot/fred.jpg.

share|improve this question
up vote 1 down vote accepted

First, make sure your ISP does not block port 80.

Second, ensure your computer is up-to-date on Windows updates.

Third, if your website uses an SQL server make sure that all requests are parameterised. Do not expose the SQL server directly to the Internet.

Fourth, you need to set the firewall to allow appropriate incoming connections to the web server. There is a pre-defined rule which you need to enable:

  • Go to "Control Panel" -> "Administrative Tools" -> "Windows Firewall with Advanced Security".
  • Choose "Inbound Rules" in the left pane.
  • Scroll down to "World Wide Web Services (HTTP Traffic-In)" where the Profile is "Domain". (Not the HTTPS one, further down.) Double-click it.
  • Choose the "Scope" tab. Under "Remote IP addresses" select "These IP addresses" and add the appropriate addresses or ranges which you wish to allow access from [1].
  • Possibly necessary for you: under the "Advanced" tab, choose "Enable edge traversal".
  • Under the "General" tab, select "Enabled" and "Allow the connection".

[1] This is to limit the number of hacking attempts your computer will be subjected to. It does not have to be an exact list - just a few /8 ranges (Wikipedia: Classless Inter-Domain Routing) would cut down vastly on the hacking attempts.

Fifth, In IIS Manager, select the web site you are going to be using and in the "Bindings" check that you have something set up for http. If this is the only web site on the computer, "All unassigned" should suffice. Once it is working, have a look in the IIS logs for the website to check what IP address requests come in on and refine the binding/add another one.

Finally, enable the pass-through on your router.

You should now be able to access the web site on your computer from outside.

For troubleshooting, the IIS logs are, by default, in C:\inetpub\logs\LogFiles.

There are services such as No-IP which allow you to have a domain name for the web site so that it does not matter if your external IP address changes - you can simply give clients a domain name instead of an IP address.

I may well have missed something out of all that, please let me know and I'll see about corrections.

share|improve this answer

You would need to open port 80 on your firewall/router to go to the address of this PC. But be warned, opening service to the internet is risky business. Keep the machine patched and expect hacking attempts. Don't keep other important data on the same machine.

share|improve this answer
    
He would also need to give IIS-User the NTFS Read-Only rights to the jpg files that he says are not viewable even internally (if I understood the question correctly). – paradroid May 12 '11 at 17:10
    
Why don't you add that as a separate answer. It may be more what he's having a problem with. – uSlackr May 12 '11 at 17:27
    
I may do that if the OP edits his/her question to include more information about the problem, as I am not really sure at the moment. – paradroid May 12 '11 at 17:30
    
thank you. What I want to be able to accomplish is to create a webpage on my IIS and give access to it to anybody simply by giving them an IP number. My router will allow me to set up a NAT connection with should obviate any security problems if I give access to port 80, but only through the router/NAT. – greenber May 13 '11 at 15:24

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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