centos下服务器TCP转发配置,第1张

当客户无法访问我们的服务器或者访问很慢的时候,我们通常会用到cdn,但是cdn通常只支持http转发,对其他访问无法进行转发,这时候我们就需要一个中转服务器来配置TCP转发。

iptables添加如下配置就可以实现转发(xxxxxxxxxxxx为目标服务器ip,6001、6002为转发端口,也可以添加80端口进行http转发)

-A PREROUTING -p tcp -i eth1 --dport 6001 -j DNAT --to xxxxxxxxxxxx:6001

-A PREROUTING -p tcp -i eth1 --dport 6002 -j DNAT --to xxxxxxxxxxxx:6002

-A POSTROUTING -j MASQUERADE

完全可以共存。

不清楚你安装SVN用的是哪种安装包,是否自带了Apache?一般来说,SVN和Apache集成时,是直接修改原有Apache的httpdconf文件,这样就完全不影响原有的web应用。如果是因为安装SVN时自带了Apache和原有的Apache发生冲突,可以尝试修改自带的Apache的httpdconf文件,将其中的端口从80改为其它端口。

利用frp穿透技术,来实现你要的功能,不需要公网IP。毕竟现在公网IP运营商有很多限制:

以下文章转载自吴昊博客

frp内网穿透是通过一个带有公网IP的服务器进行中转,对被控主机实现反向代理,用户通过访问frps(中转服务器)来实现对frpc(被控主机)的远程访问。

frp流程图如下:

frp项目地址:https://githubcom/fatedier/frp

本实验环境以阿里云服务器作为中转机,中转服务器使用Centos76,被控主机使用Centos76,用户使用Windows10由于网络原因,文中链接已经替换成了本地链接,如不放心,请自行去GitHub下载

frps中转服务器配置

1、下载frp

在一台有公网IP的主机上配置frps,我这里以阿里云Centos7x主机为例

1 wget http://downwhsircom/downloads/frp_0270_linux_amd64targz

2 tar xf frp_0270_linux_amd64targz

3 mv frp_0270_linux_amd64 /usr/local

4 cd /usr/local/frp_0270_linux_amd64

5 rm -f frpc

2、配置frps

这里使用最基础的配置,bind_port 表示frp面板的监控端口,dashboard_user表示面板的登陆帐号,dashboard_pwd表示面板的登陆密码,其它不动。

1 vi

frpsini

配置文件说明:

1 [common]

2 bind_port = 7000

3

4 dashboard_user = whsir

5 dashboard_pwd = blogwhsircom

6 dashboard_port = 8000

3、启动frps

配置启动服务

1 vi /etc/systemd/system/frpsservice

1 [Unit]

2 Description=frps daemon

3 After=syslogtarget networktarget

4 Wants=networktarget

5

6 [Service]

7 Type=simple

8 ExecStart=/usr/local/frp_0270_linux_amd64/frps -c /usr/local/frp_0270_linux_amd64/frpsini

9

10 [Install]

11 WantedBy=multi-usertarget

技行以下两个命令

1 systemctl enable frps

2 systemctl start frps

4、访问监控平台

http://公网IP:8000

账号whsir

密码blogwhsircom

如果访问不了,请使用ss -lnt命令检查端口是否启动,是否因为防火墙原因拦截。

至此frps中转服务器配置完成

frpc内网主机配置

1、内网主机下载frp

1 wget http://downwhsircom/downloads/frp_0270_linux_amd64targz

2 tar xf frp_0270_linux_amd64targz

3 mv frp_0270_linux_amd64 /usr/local

4 cd /usr/local/frp_0270_linux_amd64

5 rm -f frps

2、配置frpc

其中xxxx表示frps中转服务器IP地址

ssh字段:local_port = 22示被控(内网)主机的ssh端口,remote_port = 6000表示ssh中转端口

web字段:local_port = 80表示被控(内网)主机的web端口,remote_port = 8081表示web中转端口

1 vi frpcini

1 [common]

2 server_addr = xxxx

3 server_port = 7000

4

5 [ssh]

6 type = tcp

7 local_ip = 127001

8 local_port = 22

9 remote_port = 6000

10

11 [web]

12 type = tcp

13 local_ip = 127001

14 local_port = 80

15 remote_port = 8081

3、启动frpc

配置启动服务

1 vi /etc/systemd/system/frpcservice

1 [Unit]

2 Description=frpc daemon

3 After=syslogtarget networktarget

4 Wants=networktarget

5

6 [Service]

7 Type=simple

8 ExecStart=/usr/local/frp_0270_linux_amd64/frpc -c /usr/local/frp_0270_linux_amd64/frpcini

9

10 [Install]

11 WantedBy=multi-usertarget

执行如下命令

1 systemctl enable frpc

2 systemctl start frpc

至此frpc被控主机配置完成

此时可通过xxxx:6000连接内网ssh,通过http://xxxx:8081访问内网主机web,访问速度取决于带宽

这时候,内网主机就映射到外网去了,然后,用域名指定你的frp主机ip就可以了。这样就可以实现你的功能了。

[current_user@hostname directory]

这个格式的意思是:

current_user:当前登录(操作)的用户

hostname:主机名

directory:当前目录 ,就是你现在所在的目录(可以用pwd命令查看)

/和liuxin的区别在于:

/ :对应“/”目录,也就是根目录

liuxin:对应/home/liuxin这个目录(正常情况是这样)

编辑/etc/httpd/conf/httpdconf时权限不够?

你用root用户登录,执行以下命令,把结果贴上来吧

ll /etc/httpd/conf/httpdconf

其实一楼说的特别细致,总结一下,centos74Apache服务器开启httpd服务

命令:

systemctl start httpdservice

查看是否开启服务

systemctl status httpdservice

开启服务器就可以了,如果还是不好使,就把Linux里的防火墙关了

也是这个命令

systemctl stop firewalld

systemctl disable firewalld

查看是否关闭

systemctl status firewalld

记得关闭selinux,都是国赛选手,你应该知道的,如果selinux不知道怎么关,就去湖北游玩一圈叭

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » centos下服务器TCP转发配置

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情