介绍
SolusVM 是目前国内外卖VPS的最常见的面板之一,另外还有 Virtualizor 以及 Xen System,以及比较少见的 Promox 和 ESXi 以及非常稀有土豪专用的 OnApp。当然还有些号称云主机的用OpenStack 或者 OpenNebula,这些就不提了。不过我相信大部分人应该都接触过 SolusVM,作为 OnApp 旗下的比较低端的虚拟化产品,以及和 WHMCS 等财务系统比较好的集成,所以非常多的VPS商家都喜欢用这个。 所以这个系列来稍微介绍下这些 IDC 比较常用的东西,之前的 Proxmox 也是这个系列的其实,之后会有啥就看心情了。 由于 Solusvm 的某些BUG(其实是一堆),在 CentOS7 上安装 Solusvm 会导致出现无法限速,无法重启后自动启动 VM 的情况,所以一般情况下建议使用 CentOS6 安装。 但是 Solusvm 对于系统的分区是有要求的,所以我们从安装 CentOS6 开始介绍,当然是跳着介绍的,只说需要特别注意的地方,最好的情况是你的独服商家提供了 Solusvm 的镜像,这样你就不用折腾的,但是有些只提供了 OpenVZ Slave(Master) 的镜像,所以这种情况下如果你要安装 KVM 或者 Xen 的 Solusvm Slave 就需要自己动手了。
准备
- 保证你的系统是 Centos6.X 系列,如果不是建议重装
- CentOS7 官方也支持,但是暂未尝试
下文介绍的方法是在没有对应系统模板情况下自助重装的方式,注意要求是 KVM 架构
安装所需软件
#Debian/Ubuntu: apt-get update && apt-get install -y xz-utils openssl gawk coreutils file #RedHat/CentOS: yum update && yum install -y xz openssl gawk coreutils file
重装系统
wget --no-check-certificate -qO CentOSNET.sh 'https://moeclub.org/attachment/LinuxShell/CentOSNET.sh' && chmod a+x CentOSNET.sh && bash CentOSNET.sh -c 6.8 -v 64 -a
命令参数:
Usage: bash CentOSNET.sh -c/--centos [dist-version] -v/--ver [32/i386|64/amd64] --ip-addr/--ip-gate/--ip-mask -yum/--mirror -a/-m
务必注意,网络重装需要一些等待时间,大概半小时左右。
安装
wget https://files.soluslabs.com/install.sh sh install.sh
选择版本
1 → 主控端,无虚拟化 2 → 主控端,OpenVZ 虚拟化 + 模板 3 → 主控端,OpenVZ 虚拟化 4 → 被控端,KVM 5 → 被控端,Xen 6 → 被控端,无虚拟化
安装完成后,会出现如下信息,主要包括 SolusVM 管理面板和用户面板信息,后续需要做的准备工作主要就是 客户端汉化、SSL 证书、相应重启检查了。
具体参考官方文档
破解SolusVM主控
- 添加伪授权hosts
vi /etc/hosts
添加如下伪授权,套餐是 SolusVM Enterprise (NOC):
150.95.9.225 soluslabs.com 150.95.9.225 www.soluslabs.com 150.95.9.225 licensing1.soluslabs.net 150.95.9.225 licensing2.soluslabs.net 150.95.9.225 licensing3.soluslabs.net 150.95.9.225 licensing4.soluslabs.net 150.95.9.225 licensing5.soluslabs.net 150.95.9.225 licensing6.soluslabs.net
或者,套餐是 SolusVM Enterprise (RS)
150.95.9.221 soluslabs.com 150.95.9.221 www.soluslabs.com 150.95.9.221 licensing1.soluslabs.net 150.95.9.221 licensing2.soluslabs.net 150.95.9.221 licensing3.soluslabs.net 150.95.9.221 licensing4.soluslabs.net 150.95.9.221 licensing5.soluslabs.net 150.95.9.221 licensing6.soluslabs.net
- 防火墙屏蔽验证地址
iptables -I INPUT -s 94.0.0.0/8 -j DROP
保存iptables配置
service iptables save
重启iptables
service iptables restart
破解SolusVM被控
添加伪授权hosts
vi /etc/hosts
添加如下伪授权:
150.95.9.225 soluslabs.com 150.95.9.225 www.soluslabs.com 150.95.9.225 licensing1.soluslabs.net 150.95.9.225 licensing2.soluslabs.net 150.95.9.225 licensing3.soluslabs.net 150.95.9.225 licensing4.soluslabs.net 150.95.9.225 licensing5.soluslabs.net 150.95.9.225 licensing6.soluslabs.net
或者
150.95.9.221 soluslabs.com 150.95.9.221 www.soluslabs.com 150.95.9.221 licensing1.soluslabs.net 150.95.9.221 licensing2.soluslabs.net 150.95.9.221 licensing3.soluslabs.net 150.95.9.221 licensing4.soluslabs.net 150.95.9.221 licensing5.soluslabs.net 150.95.9.221 licensing6.soluslabs.net
关闭selinux
vi /etc/sysconfig/selinux
把 SELINUX 设为 disabled
如下:
SELINUX=disabled
客户端汉化
cd /usr/local/solusvm/language/client/ wget "https://documentation.solusvm.com/download/attachments/7667936/Simplified-Chinese.lang.txt?api=v2" -O Chinese.lang.txt chown solusvm:solusvm Chinese.lang.txt
SSL 证书配置
- 手工替换
路径是 /usr/local/svmstack/nginx/ssl,自行替换其中的 ssl.crt 和 ssl.key 即可。 - 自动更新
- 获取证书
yum install curl && curl https://get.acme.sh | sh && source ~/.bashrc acme.sh --issue -d ensu.cc -w /usr/local/solusvm/www/.verification
- 安装证书
acme.sh --installcert -d ensu.cc \ --keypath /usr/local/svmstack/nginx/ssl/ssl.key \ --fullchainpath /usr/local/svmstack/nginx/ssl/ssl.crt \ --reloadcmd "service svmstack-nginx restart; \ /usr/local/svmstack/sshwebsocket/quit; \ /usr/local/svmstack/sshwebsocket/port_check; \ cd /usr/local/svmstack/nginx/ssl && cat ssl.key ssl.crt > ssl.pem"
将ensu.cc替换为自己的域名.
确认内核
reboot uname -r
当查询到的内核变为 2.6.32-042stab128.2,就代表完成了。
配置
激活
管理登陆地址:https://ensu.cc:5656/admincp 用户名:vpsadmin 密码:vpsadmin
在激活地址:https://ensu.cc:5656/admincp/license.php 输入你在官网申请或购买的证书激活.
将ensu.cc替换为自己的域名.
设置 Node
设置本地 Node, 地址:https://ensu.cc:5656/admincp/nodes.php
想超售这里就写的比实际大就行了。
设置 IP 段(IP Block)
设置地址:https://ensu.cc:5656/admincp/ipblocks.php
如果你是公网 IP 段,正常设置即可,不赘述。
如果你是想做 NAT VPS,详见下文 NAT VPS 相关配置
设置 VPS Plan
本教程仅涉及 OpenVZ 的开通
设置地址:https://ensu.cc:5656/admincp/addvzplan.php
仅解释其中两个参数:
Guaranteed Ram:实际内存
Burstable to Ram:等于 内存 + SWAP
例(64M 内存的小计划):
NAT VPS 相关配置
取消 ip_conntrack 的禁用
- 修改文件 yum install nano && nano /etc/modprobe.d/openvz.conf 将 =1 改为 =0 ,保存退出。
- 重启系统 reboot
- 检查 iptables -t nat -L 假如没有说异常(缺失、丢失等)说明 ip_conntrack 取消禁用成功
//错误提示 iptables v1.4.7: can't initialize iptables table `nat': Table does not exist (do you need to insmod?) Perhaps iptables or your kernel needs to be upgraded. //正常结果 Chain PREROUTING (policy ACCEPT) target prot opt source destination Chain POSTROUTING (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination
设置 IP 段(IP Block)
因为要配合后续的端口转发脚本,建议设置为 10.0.1.1,具体见图。
分配 IP
内网端口转发
一般需要人工写 iptables,但是太麻烦了,下面是一个脚本,方便自动批量生成。
脚本下载地址:http://storage.liyuans.com/09.Shell/addnat.sh
使用方法:bash addnat.sh
规则解释:
默认是分配 10.0.1.0/24 的 IP 转发规则,如果有多个,就额外分配 10.0.2.0/24、10.0.3.0/24 等,这里按照10.0.1.0/24解释。
基础规则是 10.0.C.D 的内网IP(此例子C为1,D最多是3位数) SSH端口是 61D(D不足3为前面补0) 可用端口是 1D1 - 1D9(D不足3为前面补0) 具体案例: 10.0.1.56 SSH端口是 61056 可用端口是 10561 - 10569
检查是否配置好:
iptables -t nat -L
开通 VPS
人工开通
- 新增 client(用户)
https://ensu.cc:5656/admincp/clients.php - 新增 Server(机器)
https://ensu.cc:5656/admincp/vmlist.php
后续需要记住的内容如下:(仅示例)
SolusVM用户地址:https://ensu.cc:5656/login.php 用户名:Test 密码:hpgl1CXW3Rbdfsds@ VPS内网IP:10.0.1.5 公网IP:你的公网IP SSH端口:61005 可用端口:10051 - 10059 用户:root 密码:efwoiwrfe%123D
对接 WHMCS
先决条件
安装配置好 SolusVM 主控和节点服务器(包括正确设置 VPS 开通数上限、最大内存 / 硬盘用量)。
安装 WHMCS 程序(之前需确认已启用 ionCube Loader 链接2 代码加解密器,用 php -v 命令检查)。
下载 SolusVM 模块(将解压的 solusvmpro 文件夹上传到 WHMCS modules/servers 目录下)。
SolusVM 和 WHMCS 服务器有开放 80,443,5353,5656,6767 端口。
WHMCS 整合 SolusVM
1. 创建 SolusVM API。面板点击 Configuration -> API Access -> Add API User。
2. WHMCS 添加 SolusVM 主控,路径 Setup -> Products/Services -> Servers -> Add New Server。
填写下图注释的几个选项,其它不用设置(其中主控 IP 地址选项也可以写域名)。
接上图,在 Access Hash 里添加如下参数,避免无法连接访问 SolusVM API。更多参数见此介绍。
<port>443</port> <ssl_verifypeer>no</ssl_verifypeer> <ssl_verifyhost>no</ssl_verifyhost>
3. 添加 VPS 产品,依次点击 Setup -> Products/Services -> Products/Services。
点 Create a New Group 创建一个产品组,然后 Create a New Product 添加产品。
4. 产品设置选项,先设置 Details 和 Module Settings 这两个菜单项,具体见图解。
图二里的选项解释一下:
Module User Type | 模块操作用户类型,一般选 Admin |
Default Node | 在哪个节点服务器上开通 VPS |
Master Server | SolusVM 主控服务器 |
Default Plan | 对应 SolusVM 里设置的 VPS 套餐 |
Virtualization Type | VPS 所使用的虚拟化类型 |
Default Operating System | 默认系统模板(这个笔者测试无法加载,原因不详,没有先不设置) |
Username Prefix | SolusVM 用户名前缀,用于登录 SolusVM 客户面板的那个账号 |
IP Addresses | VPS 绑定的 IP 数量 |
Node Group | SolusVM 里设置的节点服务器组 |
Internal IP | 是否分配内网 IP。如果分配,需要先在 SolusVM 里添加内网 IP 范围 |
接着设置 Custom Fields 菜单项,添加以下自定义字段(KVM 产品需要添加列出的全部字段)。字段的 Tick Box 选项视乎需要设置,例如 rootpassword 不勾选仅管理员,则可以在客户区产品页附加信息里看到 VPS ROOT 密码(是否显示还取决主题模板是否支持)。
Field Name | Field Type | Tick Box | Virtualization Types |
---|---|---|---|
vserverid | Text Box | Admin Only | All |
rootpassword | Text Box | Admin Only | All |
nodeid | Text Box | Admin Only | All |
instructions | Text Box | Admin Only | KVM |
vncip | Text Box | Admin Only | Xen HVM, KVM |
vncport | Text Box | Admin Only | Xen HVM, KVM |
vncpassword | Text Box | Admin Only | Xen HVM, KVM |
internalip | Text Box | Admin Only | Xen PV, Xen HVM, KVM |
添加后的截图。
5. 创建用户选项,路径 Setup -> Products/Services -> Configurable Options -> Create a New Group.
例如创建一个操作系统选项,以便用户在下单时可以选择系统,这步的命名可以随意。
创建后点击编辑选项,点击里面的 Add New Configurable Option 添加操作系统。选项名称使用默认的 Operating System,选项类型选择 Dropdown。
系统添加格式为 系统模板文件名 | 显示名称。例如系统模板文件名为 linux-centos-7-x86_64-minimal-latest.gz,则设置为 linux-centos-7-x86_64-minimal-latest|CentOS 7 64bit。如果要设置初装费,就输入其中的价格选项。
还可以按需添加其它产品选项,如数据中心地点/IP/硬盘/内存配置等,SolusVM 文档里有相关介绍。
6. 到此,SolusVM 整合 WHMCS 开通 VPS 就基本完成了,注册账号下单测试下。
结束语
以上就是 SolusVM 官方 WHMCS 模块整合教程,使用体验比较差。因为客户区只有重启、开关机、VNC 几个选项,没有重装系统/更改 root 密码这些基础功能。
要解决这些问题,可以用第三方模块替代,目前较主流的有 SolusVM Extended VPS For WHMCS (功能强大,使用较广泛)以及 SolusVM Premium For WHMCS(需同时上传他家开发的 NeWorld Manager Tools 插件才能工作,不用激活,文件存在就行).
这两个模块的各自特点:前者老外开发,界面一般但功能多。后者国人开发,界面和使用体验都好。就是网上搜索作者意外看到些负面消息,不过这也不能说明什么,产品体验确实是好。
(三)Paypal支付
申请地址:https://www.paypal.com/bizsignup
系统下载
官方:https://tdn.solusvm.com/
网友自制:https://solusvm-kvm-templates.com