EC2 instance running apache tomcat not accessible from outside

15,627

Solution 1

Login to the AWS console and goto the Security Groups section Here, in the Inbound add a new rule named Custom TCP Rule and enter the custom port range 8080.

Now goto enter the {ipaddress}:8080 in the browser

Solution 2

By default, AWS instances start off without any ports accessable from the internet. You need to alter your VPC's security group settings. To do this, select your instance in the EC2 list. In the frame under where you select your instance, you'll see a bunch of random data about the instance, including the "Security Group" - click on this to modify that instances firewall rules. Please be aware that depending on how your VPCs are setup, that altering these rules may affect more than one instance.

It's pretty obvious once you know about it's existence and can poke around.

Share:
15,627

Related videos on Youtube

liv2hak
Author by

liv2hak

Updated on September 18, 2022

Comments

  • liv2hak
    liv2hak almost 2 years

    I have a 64-bit amazon linux instance in aws. I am running apache tomcat6 running on that machine.

    sudo fuser -v -n tcp 8080
                         USER        PID ACCESS COMMAND
    8080/tcp:            tomcat     2492 F.... java
    

    If I do

    curl ec2-54-2xx-1xx-1xx.us-2.compute.amazonaws.com:8080
    

    I do get the following web page.

    <!--
      Licensed to the Apache Software Foundation (ASF) under one or more
      contributor license agreements.  See the NOTICE file distributed with
      this work for additional information regarding copyright ownership.
      The ASF licenses this file to You under the Apache License, Version 2.0
      (the "License"); you may not use this file except in compliance with
      the License.  You may obtain a copy of the License at
    
          http://www.apache.org/licenses/LICENSE-2.0
    
      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
    -->
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
        <head>
        <title>Apache Tomcat</title>
        <style type="text/css">
        /*<![CDATA[*/
          body {
              color: #000000;
              background-color: #FFFFFF;
              font-family: Arial, "Times New Roman", Times, serif;
              margin: 10px 0px;
          }
    
        img {
           border: none;
        }
    
        a:link, a:visited {
            color: blue
        }
    
        th {
            font-family: Verdana, "Times New Roman", Times, serif;
            font-size: 110%;
            font-weight: normal;
            font-style: italic;
            background: #D2A41C;
            text-align: left;
        }
    
        td {
            color: #000000;
            font-family: Arial, Helvetica, sans-serif;
        }
    
        td.menu {
            background: #FFDC75;
        }
    
        .center {
            text-align: center;
        }
    
        .code {
            color: #000000;
            font-family: "Courier New", Courier, monospace;
            font-size: 110%;
            margin-left: 2.5em;
        }
    
         #banner {
            margin-bottom: 12px;
         }
    
         p#congrats {
             margin-top: 0;
             font-weight: bold;
             text-align: center;
         }
    
         p#footer {
             text-align: right;
             font-size: 80%;
         }
         /*]]>*/
       </style>
    </head>
    
    <body>
    
    <!-- Header -->
    <table id="banner" width="100%">
        <tr>
          <td align="left" style="width:130px">
            <a href="http://tomcat.apache.org/">
              <img src="tomcat.gif" height="92" width="130" alt="The Mighty Tomcat - MEOW!"/>
            </a>
          </td>
          <td align="left" valign="top"><b>Apache Tomcat</b></td>
          <td align="right">
            <a href="http://www.apache.org/">
              <img src="asf-logo-wide.gif" height="51" width="537" alt="The Apache Software Foundation"/>
            </a>
           </td>
         </tr>
    </table>
    
    <table>
        <tr>
    
            <!-- Table of Contents -->
            <td valign="top">
                <table width="100%" border="1" cellspacing="0" cellpadding="3">
                    <tr>
                      <th>Administration</th>
                    </tr>
                    <tr>
                      <td class="menu">
                        <a href="/manager/status">Status</a><br/>
                        <a href="/manager/html">Tomcat&nbsp;Manager</a><br/>
                        &nbsp;
                      </td>
                    </tr>
                </table>
                <br />
                <table width="100%" border="1" cellspacing="0" cellpadding="3">
                    <tr>
                      <th>Documentation</th>
                    </tr>
                    <tr>
                      <td class="menu">
                        <a href="RELEASE-NOTES.txt">Release&nbsp;Notes</a><br/>
                        <a href="/docs/changelog.html">Change&nbsp;Log</a><br/>
                        <a href="/docs">Tomcat&nbsp;Documentation</a><br/>
                        &nbsp;
                        </td>
                    </tr>
                </table>
                <br/>
                <table width="100%" border="1" cellspacing="0" cellpadding="3">
                    <tr>
                      <th>Tomcat Online</th>
                    </tr>
                    <tr>
                      <td class="menu">
                        <a href="http://tomcat.apache.org/">Home&nbsp;Page</a><br/>
                        <a href="http://tomcat.apache.org/faq/">FAQ</a><br/>
                        <a href="http://tomcat.apache.org/bugreport.html">Bug&nbsp;Database</a><br/>
                        <a href="http://mail-archives.apache.org/mod_mbox/tomcat-users/">Users&nbsp;Mailing&nbsp;List</a><br/>
                        <a href="http://mail-archives.apache.org/mod_mbox/tomcat-dev/">Developers&nbsp;Mailing&nbsp;List</a><br/>
                        <a href="irc://irc.freenode.net/#tomcat">IRC</a><br/>
                        &nbsp;
                      </td>
                    </tr>
                </table>
                <br/>
                <table width="100%" border="1" cellspacing="0" cellpadding="3">
                    <tr>
                      <th>Miscellaneous</th>
                    </tr>
                    <tr>
                      <td class="menu">
                        <a href="/examples/servlets/">Servlets Examples</a><br/>
                        <a href="/examples/jsp/">JSP Examples</a><br/>
                        <a href="http://wiki.apache.org/tomcat/Specifications">Specifications</a><br/>
                            &nbsp;
                      </td>
                    </tr>
                </table>
            </td>
    
            <td style="width:20px">&nbsp;</td>
    
            <!-- Body -->
            <td align="left" valign="top">
              <p id="congrats">If you're seeing this page via a web browser, it means you've setup Tomcat successfully. Congratulations!</p>
    
              <p>As you may have guessed by now, this is the default Tomcat home page. It can be found on the local filesystem at:</p>
              <p class="code">$CATALINA_HOME/webapps/ROOT/index.html</p>
    
              <p>where "$CATALINA_HOME" is the root of the Tomcat installation directory. If you're seeing this page, and you don't think you should be, then you're either a user who has arrived at new installation of Tomcat, or you're an administrator who hasn't got his/her setup quite right. Providing the latter is the case, please refer to the <a href="/docs">Tomcat Documentation</a> for more detailed setup and administration information than is found in the INSTALL file.</p>
    
                <p><b>NOTE: For security reasons, using the manager webapp
                is restricted to users with certain roles such as "manager-gui".</b>
                Users are defined in <code>$CATALINA_HOME/conf/tomcat-users.xml</code>.</p>
    
                <p>Included with this release are a host of sample Servlets and JSPs (with associated source code), extensive documentation, and an introductory guide to developing web applications.</p>
    
                <p>Tomcat mailing lists are available at the Tomcat project web site:</p>
    
               <ul>
                   <li><b><a href="http://tomcat.apache.org/lists.html#tomcat-users">tomcat-users</a></b> for general questions related to configuring and using Tomcat</li>
                   <li><b><a href="http://tomcat.apache.org/lists.html#tomcat-dev">tomcat-dev</a></b> for developers working on Tomcat</li>
               </ul>
    
                <p>Thanks for using Tomcat!</p>
    
                <p id="footer"><img src="tomcat-power.gif" width="77" height="80" alt="Powered by Tomcat"/><br/>
                &nbsp;
    
                Copyright &copy; 1999-2014 Apache Software Foundation<br/>
                All Rights Reserved
                </p>
            </td>
    
        </tr>
    </table>
    
    </body>
    </html>
    

    However If I try to access the webserver from a web browser from an external machine I get the following error.

    Google Chrome's connection attempt to ec2-54-2xx-1xx-1xx.us-2.compute.amazonaws.com was rejected. The website may be down, or your network may not be properly configured. Currently I have configured my security groups (both inbound and outbound) to allow all traffic from any machine. 
    

    I am trying to access this from my company network.Is it possible that my company firewall is blocking it? If yes why would that be?

    In the security settings I have the following values for Inbound and Outbound.

    Type           Protocol         Port Range           Source
    All traffic      All               All             0.0.0.0/0
    

    I am still not able to access the web server from outside.

  • liv2hak
    liv2hak over 9 years
    Please see updated security settings above
  • Some Linux Nerd
    Some Linux Nerd over 9 years
    It's definitely possibly that a corporate admin blocked it since 8080 is frequently used for non-squid http proxies. Can you try port-scanning your ec2 vm from w3dt.net/tools/portscan ? That should tell you if the problem is your internet connection.