VPS使用教程
VPS全称Virtual Private Server(虚拟专用服务器),它其实是在一台功能强大的服务器母机上,用虚拟机虚拟出很多虚拟的电脑。这样做可以有效利用资源,进一步摊薄成本。
一、VPS的应用范围
VPS的母机大部分是在机房里,它的优势在于网络(包括上传、下载的速度,集群的内网联接快等优势)。
日常生活中,它是可以被用来做以下几件有意义的事情:
1、网页服务
对于网页服务来说,还有一种叫虚拟空间的产品,它和VPS的应用来说,缺点太多--不灵活,单位成本太贵,打开网页慢等等。从多年的经验来看,还是VPS比较靠谱。但是它对技术方面需要一定的认知:
(1)域名
域名是解释对应主机IP的东西。虽然使用IP也可以访问网页,但如果IP更换了,就需要记忆新的IP地址,这会比较麻烦,所以就产生了域名。例如xxx.com,叫做根域名,www.xxx.com其实算是一个二级域名。它可以在本站的IDC网址分类中找到注册的地方,都是用过来算比较靠谱的地方。.com,.cn域名作为平时主要使用的域名,是不允许重复的,可以注册的名字还是要多想想的。如果要求不高,后缀.top,.ink,.co的域名也是不错的选择(主要它便宜)。
提示:购买域名时需要实名注册,它和网站备案又不是同一个东西。
(2)VPS服务器/网页空间
如果域名指向的网页空间,那么比较傻瓜化,把你的网站源码直接丢到空间里,一般有index.php或是index.html等就可以直接访问了。但对VPS来说,特别是安装了纯净系统的VPS,是需要经过一番折腾的。作者熟悉的系统是linux centos系统,其它系统可以找百度。
1)修改密码
一般VPS购买创建后,都会邮件到注册邮箱一个随机密码。可以使用工具xshell登陆VPS,在代码行中输入:
passwd
,输入用户root
,密码是不会显示出来的,并需要重复两遍。
2)搭建PHP环境
本人一般使用的PHP环境,因为ASPX用WIN,JSP太贵太烦,PHP比较适中,源码也多。如果是小白,可以使用套件来搭环境,只要套件包含APACHE,PHP,MYSQL即可(最基本环境)。推荐的可以用LAMP套件,或是宝塔面板。
(3)PHP源码
最简单直接的是用成套的源码+主题,本站就是这样实现的。wordpress是比较推荐的一款开源程序。
2、FRP穿透
用家里的网络及设备来搭建网站/服务,通过VPS中转。这种有相关的软件,例如:花生壳,nat123。可以说它们都非常有局限性,要么是带宽,要么是中转速度。至少用起来不花大价钱都比较痛苦。
FRP它是开源软件
https://github.com/fatedier/frp
感谢作者为我们带来了这么好的工具。但编辑安装比较麻烦,使用一键安装包就可以了。具体的安装方法点击进去都写得很清楚。
接下是重点:
(1)检查防火墙
firewall-cmd --state
如果显示没有firewall的指令,要么没有安装防火墙,要么防火墙没有打(这其实也比较方便了)。如果防火墙running状态,那么要开始
(2)添加端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
其中8080这个端口可以任意更改(最大65535)。写的时候最好粘贴过去,注意格式。
(3)重启防火墙
firewall-cmd --reload
(4)保存IPtables规则
service iptables save
如果没有iptables这个系统服务,可以安装一个。
yum install iptables-services
其它的备用指令:
1)查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports
2)关闭防火墙
如果要开放的端口太多,嫌麻烦,可以关闭防火墙,安全性自行评估
systemctl stop firewalld.service
3)查看监听的端口
netstat -lnpt
这样的话,就搞定了防火墙的端口,FRP有几个端口需要注意:bind port是在本地配置时frp.ini文件里需要设置的。dashport是在线查看联接情况的端口,通过IP:端口号的形式是能够在浏览器里访问的。还有http和ssl端口都是网页端的访问端口,其实只要不是设置成80和443端口,都不要紧,最多通过指定端口访问中转的网页。
3、梯子
其实大部分时候,是不需要梯子来“翻墙”的。因为网站被墙总是有它的道理的,但有些国外的网址实在太用用处,例如google的能力实是强于baidu,youtube不谈ZZ的话还要比国内的B站好很多的。当然还有别的原因,台湾的网站打开慢,找个中间代理会快很多。一系列的的原因让梯子还有有存在的价值。听说SS的加密已经被破,这次推荐的是VMESS协议的梯子搭建。
下面是一键安装:
bash <(curl -s -L https://git.io/v2ray.sh)
安装完成可以通过v2ray
管理或是输入v2ray tg
来搭建“电报”软件的专用代理。
服务器端设置好之后,是相关软件在本地的应用→V2ray。
本站的备用→下载地址
二、VPS的优化
1、BBR加速
BBR加速的安装分为两个步骤:
(1)查看内核/升级内核(>4.0)
uname -r
//查看内核版
如果大于4.0版本后面的操作就不用做了,直接进入(2)操作。
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
//以上3行安装内核
rpm -qa | grep kernel
//查看内核版本,只要有1个大于4.0版就可以
sudo egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
//设置启动项
sudo grub2-set-default 0
//设置默认启动项
reboot
//重启
(2)BBR加速一键安装
sudo wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
重启完成后,可以通过lsmod | grep bbr
查看bbr运行情况。
2、高并发优化
系统层优化
系统 socket 层优化
echo 65535 > /proc/sys/net/core/somaxconn
准许最大链接数
echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle
快速回收链接
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
重用链接
echo 0 > /proc/sys/net/ipv4/tcp_syncookies
关闭洪水抵御
系统文件层优化
ulimit -n 65535
vim /etc/sysctl.conf
net.ipv4.tcp_syncookies = 0
sysctl -p
另附其他系统内核参数说明:
net.ipv4.tcp_syncookies = 0
此参数是为了防止洪水攻击的,但对于大并发系统,要禁用此设置
net.ipv4.tcp_max_syn_backlog
参数决定了SYN_RECV状态队列的数量,一般默认值为512或者1024,即超过这个数量,系统将不再接受新的TCP连接请求,一定程度上可以防止系统资源耗尽。可根据情况增加该值以接受更多的连接请求。
net.ipv4.tcp_tw_recycle
参数决定是否加速TIME_WAIT的sockets的回收,默认为0。
net.ipv4.tcp_tw_reuse
参数决定是否可将TIME_WAIT状态的sockets用于新的TCP连接,默认为0。
net.ipv4.tcp_max_tw_buckets
参数决定TIME_WAIT状态的sockets总数量,可根据连接数和系统资源需要进行设置。
修改/etc/sysctl.cnf文件,在最后追加如下内容:
net.core.netdev_max_backlog = 32768
net.core.somaxconn = 32768
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.route.gc_timeout = 100
net.ipv4.tcp_fin_timeout = 30
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 65536
保存退出,执行sysctl -p
生效
版权提示:《高并发优化》来源→简书
★后记
VPS推荐:
本站用的是onevps←点击链接的日本节点VPS,国内用下来还可以,就此推介一下。
别外老毛子家的Justhost←点击链接够便宜的,使用优惠码LET20
打完折一个月9块钱RMB,值得拥用。