2015-07-03 56 views
0

我在aws中的ubuntu中运行tomcat7。不使用apache。 和我的网站使用默认的tomcat端口8080.tomcat7使用什么端口?我如何设置AWS安全组?

我不想打开除8080之外的端口,所以我在aws安全组中设置。 入站 8080 TCP任意位置 和出站allTraffic。

但我尽量休息调用

http://my_aws_ip:8080/test.do 

,但它不工作。

我应该打开端口? tomcat7是否使用某个端口?

+0

你用apt-get安装了tomcat7吗?它是否正在运行('sudo service tomcat7 status')? –

+0

是的,当我添加它工作的所有交通安全组时,运行正常。 – HeyYo

+0

仔细检查您的安全组。如果允许来自任何地方的所有流量都与该URL一起工作,那么只需允许tcp/8080入站即可。 –

回答

0

Tomcat使用您配置它使用的任何端口或端口和协议。默认情况下,它侦听tcp/8080上的HTTP请求,tcp/8009上的AJP请求以及tcp/8005上的服务管理请求。

这在连接器配置元素$ CATALINA_HOME/conf目录/ server.xml中https://tomcat.apache.org/tomcat-7.0-doc/config/http.html

你应该重新配置Tomcat能够像TCP/80标准端口侦听HTTP和TCP/443 HTTPS。非标准端口是新手部署的准备指示。

AWS安全组应配置为允许HTTP,HTTPS,pr两者取决于您的需要。我强烈建议使用HTTPS,除非传输的信息是公共领域或没有价值。

您可以使用netstat -anpt来检查Tomcat在您的EC2实例上使用的端口。它将显示所有活动和监听端口以及绑定它们的程序(包括用于Tomcat端口的java或tomcat)。

除非您真的需要root权限才能访问操作系统,否则您可能需要考虑使用Amazon Elastic Beanstalk,因为它可以为您管理所有的问题。

+0

谢谢,但我想知道为什么会发生这种情况。我在server.xml中注册了所有端口8080,8009,8005,但它不起作用。 – HeyYo

+0

如果你运行'sudo netstat -anpt | grep LISTEN'在Ubuntu EC2上你会得到什么输出? –

+0

TCP 0.0.0.0:3690 LISTEN 20737/svnserve的 TCP 0.0.0.0:3306 LISTEN 25669/mysqld的 TCP6 ::: 8080 LISTEN 31150/JAVA TCP6 ::: 49152 31150 LISTEN/JAVA TCP6 ::: 49154 31150 LISTEN/java tcp6 ::: 49155 LISTEN 31150/java tcp6 127.0.0.1:8005 LISTEN 31150/java tcp6 ::: 8009 LISTEN 31150/java – HeyYo

相关问题