搭建个人家庭服务器

前几天我从回收站捡了回垃圾,并安装了CentOS系统,今天就利用我的家庭网络,搭建一个个人服务器。

1.申请公网ip

我家里是200M电信宽带,去网上查了下,电信可以申请公网ip,这样可以省下很大一部分精力搞内网穿透。至于怎么申请,可以采用一些话术,比如说家里要装监控,需要公网ip,或者什么也不说,就直接申请,千万不要说家里要部署服务器,至于为啥,我也不知道,广大网友都是这么说的,反正搞到公网ip就行了。

这里想插一嘴,公网ip其实也不是永远固定的,经过我几天的折腾我发现每次重启光猫后,指定的公网ip都会变化,那为什么还叫公网ip呢,我理解是每次光猫与电信机房建立连接时,机房都会分配一个ip给我的光猫,只要这个连接不中断,我就会一直占有这个ip,别人就可以从公网ping到我,而当我与机房的连接中断时,机房就会将这个ip地址收回,就像java的垃圾回收一样,这个ip地址下次就会分配给别的光猫。只有专线才是固定的,永远不会变,但是很贵。还有一点,只有下行带宽是200M,上行带宽我测了一下,只有50M。

2.转发

这里我其实踩了很多坑,其实有了公网ip后,应该明白的一点就是,怎么做路由,怎么让request发送到指定的物理机。

这里还是有必要再提一下电信的宽带,当申请到公网ip后,这个ip是与这条接到光猫上的宽带绑定的,电信的光猫对外有拨号上网的功能,对内有路由的功能,网上很多思路都是进入光猫的超级管理员模式,将接在光猫上的服务器做桥接,或是更暴力一点,直接搞DMZ主机(我简单了解了一下DMZ,这个会把服务器的所有端口暴露在外,响应所有请求,不太安全)。我进行了以下尝试:

  1. 进入光猫的超级管理员模式,用户名为telecomadmin,密码是nE7jA%5m,这里看别人居然还需要抓包破解啥的,但我偶然遇到一个帖子,说可以试试这个密码,没想到还真的可以。进入到超级管理员模式后,我试着进行桥接,但不幸的是,我的光猫无法联网了,最终我不小心删除了光猫的拨号上网的配置文件,导致我不得不联系维修人员,在获得了拨号上网的逻辑ID后,我才又连上了网,但此时光猫已经被我使用超级管理员权限复位好几回了……
  2. 既然桥接失败了,那只能考虑转发了。我又一次进入了光猫的后台,只不过是普通用户模式,我偶然发现了,电信的光猫可以做端口映射,很简单,照着填就可以了。我在网上查了一下,很多人都说不起作用,但我还是试了试,没想到还真的成功了。

至此,我的家庭服务器就搭建好了。

3.测试

那怎么测试呢,ping一下?不行,就算不做端口映射,也能ping成功,因为光猫也会响应。所以我在服务器上安装了ssh服务,用我的ubuntu进行远程登录。

  1. 在服务器端(CentOS)安装openssh-server服务
  2. 在ubuntu上安装openssh客户端

用电脑连接手机热点,确保请求是从公网发起的,然后用ssh连接服务器,连上就说明成功了。


下一次尝试,将个人博客部署在服务器上,就真的说明能用了。