how to deny access to bot accessing an iis 7 - iis-7

on an iis7 machine, i am getting requests like these:
GET /scripts/){F.html(E o( 80 - 188.109.xxx.xxx Java/1.4.1_04
GET /scripts/]||!o.support.htmlSerialize&&[1, - 80 - 188.109.xxx.xxx Java/1.4.1_04
GET /scripts/);c.extend(this,{_aspectRatio:!!(j.aspectRatio),aspectRatio:j.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:j.helper||j.ghost||j.animate j.helper|| 80 - 188.109.xxx.xxx Java/1.4.1_04
GET /scripts/,e).html(j).prependTo(f);f.find( - 80 - 188.109.xxx.xxx Java/1.4.1_04
GET /scripts/,f.html()).html(g.spinner)}this.xhr=a.ajax(a.extend({},g.ajaxOptions,{url:d,success:function(i,h){a(c._sanitizeSelector(b.hash)).html(i);c._cleanup();if(g.cache){a.data(b, - 80 - 188.109.xxx.xxx Java/1.4.1_04
GET /scripts/,this.uiDialogTitlebar).html(f|| - 80 - 188.109.xxx.xxx Java/1.4.1_04
can i somehow deny access to these?
thanks.

If the IIS logs include remote IP address, you could stuff some REJECT or DENY or BLOCK rules into your system's firewall to drop them all on the floor before they reach IIS. I'd recommend aging them out of the firewall over time, because a lot of systems are on dynamic IPs, and you could wind up blocking access to legitimate users.

You cannot prevent bots (or humans for that matter) from attempting to access non-existant pages on your web server.

Related

How get rid of Port number followed by domain name like www.domainname.com:49200 instead if we type www.domainname.com in browser without port number

i am trying to Host the asp.net and silverlight application in IIS(Internet Information Service) using 49200 Port instead of Default HTTP port 80.
When i am trying to browse the application With domain name www.domainname.com it is showing not connected. When i tried it for www.domainname.com:49200 application successfully browsing. How to get rid of port number 49200 Without typing port number www.domainname.com application should browse. Please Help me How to achieve this one in IIS.
Thanks in advance experts!.
When you type www.hostname.com, the assumed port is 80. therefore, www.hostname.com is the same as typing www.hostname.com:80.
If you want to get rid of the 49200 on the end, you will need to do one of two things:
Change your site in IIS to be hosted on port 80 instead of port 49200
Introduce another server or a load balancer which is listening on port 80 and is rerouting the traffic to port 49200 on the other server.

How to find the URL of a site in IIS?

How do I found the external URL for a site in IIS 8.5 that doesn't list a host name in the bindings?
I've got a client who has given me access to their web server and asked me to find the URL for their live and test sites. The live site is called Default Web Site in IIS. It has two site bindings: one for port 80, one for 443; neither have a host name. The one for 443 has a security certificate that mentions the URL www.companyname.com. If I go to that URL from my computer, I can get to it fine. The problem is the test site. It's set up in IIS as a site called Test with two bindings: one for port 8080, one for port 8081. The binding for port 8081 has the same security certificate as the live site. Of course, that URL takes me to the live site. How do I find the URL for the test site?
Here's what I'm seeing in IIS for the test site:
Figured it out through trial and error. The main site uses the URL in the security certificate: www.companyname.com. The test site uses the same URL with the port specified in IIS: www.companyname.com:8081.
There's really no 'correct' answer, as the server in question could have multiple network interfaces, each with it's own IP address and thus URL.
Not only that, the IP address could go through a firewall that does a selective forward of the packets. In other words, the firewall "is" www.companyname.com, not your server. If a request for port 80 or 443 hits the firewall, it forwards it to server1. If a request for 8080 or 8081 hits the firewall, it forwards to server2.
Now, you mention:
Of course, that URL takes me to the live site
Does it? My guess is, you don't have a firewall, and the cert is used simply for an HTTPS certificate, but if you hit www.companyname.com:8081 you're hitting your test site; this is, of course, assuming the test site is identical to the live site. If it is not, then there's really no good way to find out the IP. You'll need to do some sleuthing at the hardware level on the server and determine what IP ranges it has, and how the hosting facility maps external IP's to those ranges. That's not hard, but it varies dramatically from site to site.
On a cloud provider, you look at the virtual networking. On a co-location site, you check with the local infrastructure. On a cable modem, you check the firewall, etc.
Thanks. How do I look for an external IP address?
The easiest way is to do a tracert from the server to say 8.8.8.8.
You then look for an IP address that isn't in the private IP ranges. (wherever this server his hosted almost certainly uses private IP ranges in it's internal system.)
The easiest way is https://www.whatismyip.com/
Most cloud centers now will do this to you:
Tracing route to dns.google [8.8.8.8]
over a maximum of 30 hops:
1 * * * Request timed out.
2 * * * Request timed out.
3 * * * Request timed out.
4 * * * Request timed out.
5 * * * Request timed out.
6 * * * Request timed out.
7 * * * Request timed out.
8 * * * Request timed out.
More than twenty years ago, most Unix systems had a bug with malformed PING's, that could crash the O/S. Windows itself had a problem SENDING the malformed PING, but not receiving. (it's not a security problem if you're suicidal). As a result, everyone has this general idea that "pings are bad". (You can use PINGS to conduct a denial of service attack). So many, many hosts will block PING's. I'm not convinced with any modern O/S that's patched that there's a problem, and pings can be an important diagnostic tool.
If you're on such a cloud, 'whatismyip' is about the only way to go, and even that's not guaranteed.

Access Web Site W/O Including Port

I have a Asp.net website hosted through Ultidev, and am using DynDns to assign a hostname (web address) to the site. My question is, is their a setting or configuration or something that I can change to go to www.yoursitename.org and my page load? Or must you always specify the port to connect to in order to connect to your site www.yoursitename.org:12345
Assuming you have already configured your router to forward port 80 (standard http port) traffic to you host computer, and opened PC firewall to allow inbound port 80 connections, then what you need to do is to run "[UltiDev Web Server Explorer][1]" and there add combination of the www.yoursitename.org and port 80 as shown on the screenshots below. One thing to note that if port 80 is already occupied in the exclusive mode by an another web server (Apache, etc.), you will see that when saving UWS configuration, the www.yoursitename.org:80 will disappear. If it didn't disappear, then the site:port combination was available and now will be used.

AWS Opsworks, Spring mvc: Unable to open my application on browser

I have deployed my application using AWS Opsworks. I could see that my application has been deployed successfully, however I am not able to open it in a browser. I tried many many combinations of url, but no luck.
On my localhost, I access my application with this url:
http://localhost:8080/app/login.
In opsworks my app name is "bootshop" and it has been deployed successfully.
Now how do i access my login page ???
I tried below urls:
login page: http://xx.xx.xx.xx:8080/bootshop/app/login - 404 Requested resource not available
index.html page: http://xx.xx.xx.xx:8080/bootshop/app/ - 404 Requested resource not available
http://xx.xx.xx.xx:8080/bootshop/login - 404 Requested resource not available
http://xx.xx.xx.xx:8080/bootshop/ - Nothing is displayed on
http://xx.xx.xx.xx - Forbidden
For my EC2 instance, I have custom TCP rule set.. which allows traffic on port 8080 from anywhere.
Your help would be really appreciated.
Thank you
The 8080 address is the internal address that Apache web server uses to communicate with the Tomcat instance. The public address that you should use is 80. Just use the root path of your server to access the application, like this:
http://xx.xx.xx.xx
where xx.xx.xx.xx is your IP address. You can of course use the DNS name if you have any for that IP address.
Make sure that you allow HTTP traffic to port 80 in the security group for the EC2 instance where the application is running.

Running asp.net site on Windows Server 2003 and accessing it over LAN

I want to run an ASP.Net application on Windows Server 2003 and access it over a LAN.
Like http://serverIP/sitename.com
How do I do this? What configuration changes should I make to IIS?
There are 2 scenarios (assuming you want/have to use IP's in the URL):
You site is the only web-site running on your web-server - you can set up your site with the default port 80 binding, i.e. you don't specify a host name or IP address. This means any request on port 80 will route to your site (remember to stop or delete the "Default" web site, as it normally has the default port 80 binding)
You have multiple sites running on your server - you need to assign an additional IP address for that server and specifically use that IP in the http binding for you site.

Resources