首页 > 编程学习 > 本地demo服务器搭建计划——(一)linux双系统安装内网穿透

由于工作之后一直用的笔记本,家里的台式机闲置了,正好拿来搭建个本地服务器。
上拼多多买了两根160元16G的国产杂牌内存条,可惜不支持xmp,凑合用够了。

安装linux系统步骤:

  • 第一步:分区。进磁盘管理,压缩卷,给linux系统腾出至少一块空闲的磁盘,有多个硬盘也一样
  • 第二步:下载centOS7镜像,想装Ubuntu的就下载Ubuntu镜像。官网估计龟速,建议到国内镜像下载,地址也退出来了。
  • https://www.centos.org/download/
  • https://developer.aliyun.com/mirror/
  • https://mirrors.aliyun.com/centos/7/isos/x86_64/?spm=a2c6h.25603864.0.0.7d234511oITu0l
  • 第三步:使用UltralSO软件制作系统安装盘,把镜像写入u盘。
  • 用UltralSO打开下载的系统镜像文件,选择启动-写入系统映像,写入到你的u盘
  • 第四步:【可选】如果你的主板有secure boot选项,要先进BIOS关闭你主板的secure boot,还要将启动模式从UEFI改成legacy,具体操作可以百度主板型号+关键字
  • 第五步:从U盘进安装界面(装过系统的应该都知道,重启时选择u盘启动)。注意这里有一个坑:如果你直接选择install CentOS 7进入安装,可能会出现Warning: dracut-initqueue timeout - starting timeout scripts.的警告,并且安装失败
  • 解决:等告警打印完,cd /dev ; ls 查看你的u盘对应哪个设备,一般是sdb4或者sdc4。然后重启,在安装界面按e进入编辑,修改第一行配置的设备为你查到的,如sdb4 linuxefi /image/pxebooot/vmlinuz inst.stage2=hd:/dev/sdb4 quiet,按Crtl+X进入安装
  • 第六步:安装linux系统没啥好说的,安装的时候有多个盘可以手动进行分配,多个盘需要增加group配置。
  • 第七步:安装好开机后,建议修改ip为静态ip,方便调试。
  • ip addr查看自己的网卡名,如ens33,vim /etc/sysconfig/network-scripts/ifcfg-ens33 修改网卡配置,主要修改4项:dhcp->static ,添加ip mask gateway dns,参考原来dhcp的配置进行修改,dns通过cat /etc/resolv.conf 查看。修改后service network restart刷新配置,测试网络通不通。
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static					  # 修改为静态
IPADDR="192.168.138.100"         # 设置的静态IP地址
NETMASK="255.255.255.0"         # 子网掩码
GATEWAY="192.168.138.2"         # 网关地址
DNS1="192.168.138.2"                 # DNS服务器
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=afd0baa3-8bf4-4e26-8d20-5bc426b75fd6
DEVICE=ens33
ONBOOT=yes
ZONE=public

内网穿透(云服务器+frp)

内网穿透因为我有腾讯云服务器,所以用的是配置frp进行内网穿透。
没有云服务器的一般用的是花生壳等工具,大部分需要收费,要么免费的不太稳定,延迟高。有公网需求的建议还是入手个试用的云服务器,或者搞个公网IP。

这里我分享下frp的配置
frp下载,
github: https://github.com/fatedier/frp/releases
wget https://github.com/fatedier/frp/releases/download/v0.34.0/frp_0.34.0_linux_amd64.tar.gz
注意别下错版本了,arch命令可以看你的机子是arm还是x86的
frp使用很简单,在云服务器启动server端 ./frps -c frps.ini
在你的本地机子上启动client端 ./frpc -c frpc.ini

主要关注配置文件的几个配置:安装包里有完整的配置可参考,分别是frps_full.ini、frpc_full.ini

server端配置:

bind_port:服务端监听的端口,建议使用 lsof -i:7000 命令查看你配置的端口有没有冲突
dashboard_port:控制台监听的端口,你可以通过这个端口访问frps的控制台
dashboard_user = admin 登录控制台的用户名密码,没啥说的
dashboard_pwd = 123456
token:客户端和服务端建立通信的凭证,要跟客户端一致
log:日志的几个配置,没啥说的,非必须

[common]
bind_port = 7000
dashboard_port = 7001
token = 30$zvC6emSWFJBkubStm+5lW1v5ZE8bzhoI4W2GwYg4s4duFtF/mD1kRXXvygMOwww+0PVKA2jZrPV2/xa7WgqiHzm+3dseiAx+xLvS15xwXOd9Y2
dashboard_user = admin
dashboard_pwd = 123456
log_file = /var/log/frp/frps/frps_info.log
log_level = info
log_max_days = 7

client端配置:

server_addr :云服务器公网ip
server_addr :server端frps监听的端口,记得在云服务器防火墙放行该端口
token :跟server进行通信的凭证,要跟服务端一致
后面的配置,就是跟服务器建立的端口映射,访问云服务器的remote_port就会给你转发到本地的local_port,同样记得在云服务器防火墙放行remote_port端口
其实你可以不用建立这么多端口映射,建议可以在本地起一个nginx的方式,来进行反向代理。

[common]
server_addr = 124.223.11.11
server_port = 7000
token = 30$zvC6emSWFJBkubStm+5lW1v5ZE8bzhoI4W2GwYg4s4duFtF/mD1kRXXvygMOwww+0PVKA2jZrPV2/xa7WgqiHzm+3dseiAx+xLvS15xwXOd9Y2
log_file = /var/log/frp/frpc/frpc_info.log
log_level = info
log_max_days = 7

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 7122

[web01]
type = tcp
local_ip = 127.0.0.1
local_port = 80
remote_port = 80

[web02]
type = tcp
local_ip = 127.0.0.1
local_port = 443
rempte_port = 443

通过服务的方式启动frps/frpc

通过服务的方式启动frps,就要添加service配置
ps: 作为一个开发,没必要记这些命令和配置,了解即可。

vim /lib/systemd/system/frps.service
配置如下

[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target

[Service]
Type=simple
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/tools/frp/frps -c /tools/frp/frps.ini

[Install]
WantedBy=multi-user.target

保存后,就可以通过systemctl start frps命令启动frps服务,或者service frps start
通过systemctl status frps查看服务状态
systemctl enable frps,可以配置frps服务开机自启。
同样,在本地服务器上添加frpc服务 vim /lib/systemd/system/frpc.service

[Unit]
Description=frpc service
After=network.target syslog.target
Wants=network.target

[Service]
Type=simple
#启动服务的命令(此处写你的frpc的实际安装目录)
ExecStart=/tools/frp/frpc -c /tools/frp/frpc.ini

[Install]
WantedBy=multi-user.target
Copyright © 2010-2022 dgrt.cn 版权所有 |关于我们| 联系方式