公司用到了jenkins,就在自己虚拟机里面部署了一个jenkins。部署成功之后,在Linux虚拟机里面能正常访问,但是外部真实机却不能访问。当时的第一反应就是觉得应该是权限问题,猜测会不会是jenkins需要开启某个权限,外部的机器才能访问。但是找了好久的资料,也没说到要开启什么权限之类的。于是又在Linux里面部署了一个tomcat,发现tomcat也不能访问,那就不是jenkins的问题了,肯定是Linux机器的原因。自然而然的想到会不会是防护墙的原因,果然,防火墙一关就OK了。

关闭防火墙确实能解决这个问题,但是在真实环境中,防火墙是不能直接关闭了,太危险。怎么办呢?只需要开放一下服务对应的端口不就可以了吗

方法一:关闭防火墙

[root@localhost ~]# service iptables stop         #关闭防火墙

[root@localhost ~]# service iptables start         #开启防火墙

[root@localhost ~]# service iptables status         #查看防火墙状态

cenOS7或者Red Hat7操作防火墙的命令改变了,命令如下:

[root@localhost ~]# systemctl stop firewalld.service             #关闭防火墙

[root@localhost ~]# systemctl start firewalld.service             #开启防火墙

[root@localhost ~]# systemctl status firewalld.service          #查看防火墙状态

方法二:开放指定的端口

[root@localhost ~]# vim /etc/sysconfig/iptables

:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited

备注: 找到 -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT   这一行,在这一行后天添加如上红色的一行,即可开放8080端口

[root@localhost ~]# service iptables restart      #重启防火墙才能生效

cenOS7或者Red Hat7开放端口方法如下:

[root@localhost ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
success

[root@localhost ~# firewall-cmd --reload          #开放端口只需需要重启防火墙才能生效
success

备注:开放端口命令解释

-zone                 作用域

-add-port=8080/tcp          添加端口,格式为:端口/通信协议

--permanent            永久生效

Linux服务正常启动,Linux服务器能访问,但是外部机器不能访问的更多相关文章

  1. 无法启动链接服务器"XXX DB Link"的 OLE DB 访问接口 "SQLNCLI11" 的嵌套事务。由于 XACT_ABORT 选项已设置为 OFF,因此必须使用嵌套事务。链接服务器"XXX DB Link"的 OLE DB 访问接口 "SQLNCLI11" 返回了消息"无法在此会话中启动更多的事务"。

    无法启动链接服务器"XXX DB Link"的 OLE DB 访问接口 "SQLNCLI11" 的嵌套事务.由于 XACT_ABORT 选项已设置为 OFF,因 ...

  2. linux系统中 redis 保存数据的5种形式 linux后端模式启动 jedis无法通过IP地址和端口号访问如何修改linux防火墙

    vim修改redis.conf配置文件(我的已经复制到虚拟机的/usr/local/redis/bin目录下)为daemonize yes, 以后端模式启动 ./redis-server redis. ...

  3. linux服务开机启动顺序

    今天遇到了一个问题,我们写了一个服务脚本A,该服务需要优先于mysql启动.脚本是从其他地方拷来的模板,前面的默认配置没改,只是实现了自己的功能.写完,chkconfig A on,reboot,启动 ...

  4. 《转载》Linux服务之搭建FTP服务器&&分布式文件服务器的比较

    参考帖子: Linux服务之FTP vsftpd的使用 大型网站图片服务器架构的演进 rsync同步文件的艺术  rsync命令详解 深入理解Tomcat虚拟目录  (测试已经OK)

  5. linux服务之NTP时间服务器

    1. NTP简介 NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步的一种协议.它的用途是把计算机的时钟同步到世界协调时UTC,其精度在局域网内可达0 ...

  6. war包部署在tomcat下,使用windows service服务方式启动tomcat服务器,在包含调用dll的模块,报dll找不到问题的解决办法

    问题描述: 开发了一个需要调用dll的java web程序,在idea开发环境下运行调试没问题,可以正常运行,在tomcat/bin下,运行批处理startup.bat,启动tomcat服务器,也可以 ...

  7. 通过yocto给p1010rdb定制linux,并启动linux

    一.通过yocto定制linux 1.安装yocto yocto只能在非root用户下编译,所以先新建一个用户. useradd chen  passwd -d chen 重启电脑进入chen用户. ...

  8. 在虚拟机上安装redis集群,redis使用版本为4.0.5,本机通过命令客户端可以连接访问,外部主机一直访问不了

    在虚拟机上安装了redis 4 ,启动后本机客户端可以连接访问,但是外部主机一直访问不了,在使用java代码连接redis集群时报:no reachable node in cluster,原因:在r ...

  9. Linux下如何启动svn服务器

    service svnserve start 启动服务 service svnserve stop 停止服务 service svnserve restart 重启服务 rpm -e --nodeps ...

随机推荐

  1. web前端工程化

    目标 1.能够了解模块化的相关规范 2.了解webpack 3.了解使用Vue单文件组件 4.能够搭建Vue脚手架 5.掌握Element-UI的使用 1.模块化的分类 A.浏览器端的模块化 1).A ...

  2. vue路由守卫配合权限,白名单

    router.beforeEach(async(to, from, next) => { // 进度条开始 NProgress.start() // 确认用户是否已登录(获取它的token值,这 ...

  3. sqlserver sp_who2和inputbuffer的使用,连接数

    一.sp_who2的使用 1.存储过程的位置 sp_who官方解释地址:https://docs.microsoft.com/zh-cn/sql/relational-databases/system ...

  4. rename 重命名文件

    1.  使用范例 范例1: 批量修改文件名 [root@localhost data]# touch {a,b,c,d,e}.txt [root@localhost data]# ls a.txt  ...

  5. hdu 4082 Hou Yi's secret(暴力枚举)

    Hou Yi's secret Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  6. Redis分布式锁【正确实现方式】

    前言 分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁.虽然网上已经有各种介 ...

  7. console.log 不起作用

    devtool console.log 突然不起作用了

  8. c# 匿名委托

    using System; namespace AnonymousMethod { delegate void ArithmeticOperation(double operand1, double ...

  9. 实现bind函数

    面试中碰到的bind函数,今天来研究下 //1.bind的返回值是函数 var obj={ name:"zhouy" } function f() { console.log(th ...

  10. 破解Revealapp的试用时间限制

    转载自:http://jingwei6.me/2014/02/28/reveal_crack.html Revealapp作为分析iOS app UI结构的利器,还是非常称手的,89刀的价格也是物有所 ...