Linux Centos 7

佐手、 提交于 2019-12-05 21:30:57

 

官网地址

  • http://tomcat.apache.org

Tomcat版本

  • 8.5.27

安装方式

  • 命令行网络下载。

完整流程

1.下载安装

打开终端,进入/usr/local目录下;

执行下载命令,下载安装包,文件会下载到当前目录下;

解压安装包;

剪切解压目录下所有文件到新的文件夹tomcat8下;

cd /usr/local
wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.27/bin/apache-tomcat-8.5.27.tar.gz
tar zxvf apache-tomcat-8.5.27.tar.gz
mv apache-tomcat-8.5.27 /usr/local/tomcat8

2.指定Java JDK

指定Tomcat JDK,因为我们将系统中原本自带的OpenJDK版本删除了,在这里我们要手动去指定一个Java JDK版本,打开/usr/local/tomcat8/bin/setclasspath.sh文件;

vim /usr/local/tomcat8/bin/setclasspath.sh

在# limitations under the License.下面添加指定JDK信息。

export JAVA_HOME=/usr/local/jdk1.8
export JRE_HOME=/usr/local/jdk1.8/jre

3.使用Tomcat

启动Tomcat;启动信息中会输出指定的Java JDK版本信息,可以检查对不对。

/usr/local/tomcat8/bin/startup.sh 启动
/usr/local/tomcat8/bin/shutdown.sh 关闭
tail -f /usr/local/tomcat8/logs/catalina.out 查看tomcat运行日志
ctrl + c 退出

在浏览器中输入http://localhost:8080,即可访问Tomcat服务器。

4.防火墙-端口开放

firewall为自带防火墙,iptables防火墙需要另外安装,但更好用,通过服务命令来完成操作systemctl。

  • firewall

如果防火墙不开放端口,则宿主机器或外网就无法访问到Tomcat服务器,在Centos 7、RHEL 7、Fedora中防火墙由firewalld来管理,语法命令如下:

启用区域端口和协议组合

firewall-cmd [--zone=<zone>] --add-port=<port>[-<port>]/<protocol> [--timeout=<seconds>]

此举将启用端口和协议的组合,端口可以是一个单独的端口 <port> 或者是一个端口范围 <port>-<port> ,协议可以是 tcp 或 udp。

命令如下:

添加(--permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=80/tcp --permanent 
firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent 

重新载入
firewall-cmd --reload

查看
firewall-cmd --zone= public --query-port=80/tcp

删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent

关闭
systemctl stop firewalld

移除  
systemctl mask firewalld  

启动
systemctl start firewalld

查看状态
systemctl status firewalld 

禁用,禁止开机启动
systemctl disable firewalld

此处我只允许了Tomcat默认端口8080通过防火墙。

从网上看到的信息,还没试过,先留个备注吧,刚接触Centos。

还可以通过传统的方式去管理,之前应该都是通过这种方式去处理的。

  • iptables

因为不知道需要安装iptables-services服务,所以直接去关闭会报错,请新手注意。

[root@localhost ~]# service iptables stop
Redirecting to /bin/systemctl stop iptables.service
Failed to stop iptables.service: Unit iptables.service not loaded.

操作命令:

安装iptables-services
yum install iptables-services

设置开机启动
systemctl enable iptables

关闭、启动、重启、重新加载
systemctl stop iptables  
systemctl start iptables  
systemctl restart iptables  
systemctl reload iptables 

保存设置
service iptables save

开放某个端口 在/etc/sysconfig/iptables里添加
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

5.端口映射

因为Centos系统是在虚拟机里面搭建的,ip通过NAT的方法共享,如果宿主机器想要访问到虚拟机中的Tomcat服务器,需要通过端口映射的方式才能访问(前提一定是centos防火墙允许对应的端口号通过)。

在虚拟机菜单中->编辑->虚拟网络编辑器,在这里面选择对应的系统网卡,添加端口就好了。

从下图我们可以看到自己当前的系统对应的网卡数据,点击NAT设置操作就行了。

最后在宿主机器上打开对应端口的地址即可测试是否成功,到这一步Tomcat的配置信息算是基本完成了。

问题总结,暂时没有遇到,从网上看到的就先留个眼。

通过端口映射后还是无法访问的话:

1、在win7主机上 telnet localhost 8000, 如果可以连接上,说明win7上没问题;

2、将你的虚拟机的防火墙关掉,方式2种:

I) service iptables stop (特点是:无需重启机器,可及时生效,但是再次打开虚拟机后,防火墙仍然开启着)

II)chkconfig iptables off (特点是:需重启机器,永久生效)

如果上述2种方式都不可以,那么试试将你的selinux设置为disabled,具体方法:

首先检查selinux状态  命令:

/usr/sbin/sestatus -v,

如果是开启状态,修改vi /etc/selinux/config 文件关掉它:

在config文件中 找到SELINUX=enforcing,将其修改为 SELINUX=disabled

重启机器

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!