程序员家里闲置电脑太多?不如改成服务器

小编:霸主 更新时间:2022-05-03

家里闲置笔记本有两三台了,放着也是放着,直接全部重装了centos,废物再利用。方便了平时开发需要的服务器环境,还省去了购买阿里云的大笔费用,一举多得!

前提条件

如何实现在家里搭建服务器呢?首先需要具备几个前提条件,如下:

一、打电话给运营商开通公网环境,此处所说的公网并不是固定IP的专线(专线太贵白嫖党用不起)。不过现在公网环境据说IP紧张,不一定能申请下来。得多打电话多跟客服沟通。

二、需要注册一个域名,不想花钱可以用花生壳的。想稳定一点推荐阿里的域名,价格也不贵一年几十块钱。域名用于动态绑定当前服务器的公网IP,防止IP变化后找不到服务器。

三、路由器一个,小米、TP均可。能够配置DMZ主机,或者端口转发即可。用于将服务器上的端口映射到公网上。

满足以上三个条件,恭喜你!我们就可以在家搭建服务器愉快地玩耍了。

服务搭建

服务器搭建步骤,如下:(服务器操作样例为centos7,路由器为小米路由器)

  • 上网设置

路由器设置为桥接模式,接入运营商光猫。使用路由器拨号上网。(现在很多家里的宽带都是使用光猫自动拨号,需要改成路由器拨号,否则公网访问不到),如果家里是光猫自动拨号而且不知道拨号密码的,可以联系运营商上门修改。

程序员家里闲置电脑太多?不如改成服务器

拨号设置

  • 服务器系统安装

将我们的电脑重装成Linux系统(其实windows也行),推荐安装CentOS7,安装步骤就不多赘述,网上案例挺多。

  • 服务器局域网IP设置

vi /etc/sysconfig/network-scripts/ifcfg-enp0s25 (ifcfg文件名称各系统有可能不相同)

程序员家里闲置电脑太多?不如改成服务器

网络设置

  • 服务器ssh远程登录设置

vi /etc/ssh/sshd_config 修改SSH配置信息

设置允许密码登录

PasswordAuthentication yes

  • 防火墙开放

firewall-cmd --zone=public --add-port=22/tcp --permanent # 开放ssh 22端口

firewall-cmd --reload # 配置立即生效

  • 端口映射

在路由器中设置内部端口对外部端口的映射,通过公网访问时使用外部端口

将ssh 22端口通过路由器映射到12222,通过公网ip:12222端口测试ssh是否能够正常访问(公网IP可以通过百度搜索ip查询获取),能正常访问恭喜你服务器已经搭建成功,可以在外面任何地方访问家里的服务器。

程序员家里闲置电脑太多?不如改成服务器

端口转发配置

  • 动态域名绑定(需要动态绑定源码地址可以留言)

由于白嫖的公网IP会经常变动,所有需要通过一个固定的域名来动态绑定服务器上的公网IP,以此达到无论何时何地都能找到自己服务器的目的。

1、如果你注册阿里的域名如何进行绑定呢?我开发了一个小程序,只需要在服务器上配置一个定时调度任务,定时刷新即可。

程序员家里闲置电脑太多?不如改成服务器

文件目录

下载auto-ddns.tar.gz

在服务器root目录下 执行tar -zxvf auto-ddns.tar.gz解压

修改ali.properties,domain.properties配置为自己相关配置即可

执行.startup.sh即可

程序员家里闲置电脑太多?不如改成服务器

操作手册

2、如果你使用的花生壳域名,可以通过脚本来绑定域名

vi checkIp.sh #编辑脚本

按i进行编辑,拷贝下面内容到shell文件中

#! /bin/bash

export lastip=$(cat myip)

export gongip=$(curl members.3322.org/dyndns/getip)

if [[ $lastip != $gongip ]];then

echo $gongip > myip

/usr/bin/curl http://***:****@ddns.oray.com/ph/update?hostname=****

fi

保存文件,输入下面的命令

:wq

脚本赋权限

chmod +x checkIp.sh

配置定时执行脚本

crontab -e

添加下面的定时任务

*/5 * * * * /root/auto-ddns/checkIp.sh

保存

:wq

完成上面的操作我们就可以愉快地使用家里的服务器了。