六一的部落格


关关难过关关过,前路漫漫亦灿灿。




VPS

Virtual Private Servers

VPS可以简单地理解为运行在服务器上的虚拟机. 服务商对服务器的资源进行划分, 提供资源配置方案供客户选择, 按年或按月付费

购买后, 服务商为客户提供VPS的IP地址, 用户名和密码. 系统在购买时已安装好, 通常由用户选择VPS的搭载系统. 用户根据需求对VPS进行配置

VPS资源包括: CPU核, RAM, 硬盘内存, 带宽, 按月计算的流量


说明

用作博客服务器

绑定域名后, 博文跳转慢, 图片加载变成了动画…

图片加载可以通过图床解决, 这个选项延后考虑..

至于博文跳转慢, 购买国内VPS的提升肯定很好..

好吧, 我就是想搞博客一条龙🤷🏻‍♀️


购买VPS平台

国内VPS作为服务器, 需要备案, 相应的好处也很多, 一个字, 快. 看网上经验, 3-5天就可以通过, 资料填写貌似也不繁琐, 服务商有可能帮忙纠正

如果购买香港的就不用备案, 就我所知, 国内VPS服务商提供香港VPS, 但是贵

VPS不比域名, 随时可以更换, 完全可以从经济划算角度出发. 当然, 便宜没好货, 服务器的稳定性以及之后可能会遇到的一些问题都和平台有关, 购买平台的反馈就比较重要

VPS使用Linux系统, 如果购买国外服务器, 就不用配置源了. 从GitHub拉取项目自然也没得问题

国内VPS平台
阿里云
腾讯云
海外VPS平台
CloudCone
RackNerd

因为关注的博主这几天刚好发布了打折服务器的相关信息, 我也赶上活动, 在CloudCone购买了VPS


在CloudCone购买VPS

  1. 注册帐号

    他们家的折扣场需要帐号才能看到

  2. 帐号充值

    支持Paypal, 支付宝, 开通Visa或MasterCard的国内信用卡

  3. 选购VPS

    嘛, 搭建博客不需要很高的配置, 我整个照搬别人的

    -
    2 vCPU Cores 2核
    1GB RAM 1GB内存
    50GB Disk 50GB硬盘
    3TB/Mo Bandwidth at 1Gb/s 每月3TB, 带宽1Gb/s
    1 IPv4 提供1个IPv4

    性能的话2核1GB应该不会有问题, 其他的资源, 我觉得CloudCone挺大方的. 价格$16.5每年, 支付宝7.33的汇率, 折合人民币121块

    他们家没有什么花里胡哨的选项, 续费价格不变

    默认系统Ubuntu 22.04, 恰好合我心意

    哎呀, 为了我的虚荣心, 不得不提, 我之前的工作内容就涉及VPS, 不过我只管用. Centos和Ubuntu都耍过, Centos性能不用说, 我选择Ubuntu


设置VPS


检查IP联通性

ping.pe

会从全球各地ping给出的ip


-
Geo 地理位置信息
Loss 丢包率
Avg 平均时延

也可以使用ipip

ipip

  1. 使用ping工具


  2. 筛选测试地区



查看服务器参数并测速

使用 bench.sh

1apt-get install wget
2
3wget -qO- bench.sh | bash

测试数据和购买时的配置清单基本一致, 上传和下载速度符合描述

-------------------- A Bench.sh Script By Teddysun -------------------
 Version            : v2023-10-15
 Usage              : wget -qO- bench.sh | bash
----------------------------------------------------------------------
 CPU Model          : Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz
 CPU Cores          : 2 @ 2699.998 MHz
 CPU Cache          : 30720 KB
 AES-NI             : ✓ Enabled
 VM-x/AMD-V         : ✗ Disabled
 Total Disk         : 49.1 GB (3.7 GB Used)
 Total Mem          : 969.2 MB (168.0 MB Used)
 Total Swap         : 1023.0 MB (524.0 KB Used)
 System uptime      : 0 days, 0 hour 47 min
 Load average       : 0.01, 0.06, 0.02
 OS                 : Ubuntu 22.04.1 LTS
 Arch               : x86_64 (64 Bit)
 Kernel             : 5.15.0-46-generic
 TCP CC             : cubic
 Virtualization     : KVM
 IPv4/IPv6          : ✓ Online / ✗ Offline
 Organization       : AS35916 MULTACOM CORPORATION
 Location           : Los Angeles / US
 Region             : California
----------------------------------------------------------------------
 I/O Speed(1st run) : 394 MB/s
 I/O Speed(2nd run) : 368 MB/s
 I/O Speed(3rd run) : 303 MB/s
 I/O Speed(average) : 355.0 MB/s
----------------------------------------------------------------------
 Node Name        Upload Speed      Download Speed      Latency
 Speedtest.net    788.57 Mbps       754.65 Mbps         0.40 ms
 Los Angeles, US  861.12 Mbps       868.79 Mbps         1.04 ms
 Dallas, US       870.81 Mbps       110.27 Mbps         35.61 ms
 Montreal, CA     736.40 Mbps       449.70 Mbps         77.20 ms
 Paris, FR        613.82 Mbps       827.85 Mbps         144.43 ms
 Amsterdam, NL    628.46 Mbps       79.99 Mbps          139.20 ms
 Shanghai, CN     354.23 Mbps       60.92 Mbps          194.11 ms
 Hongkong, CN     580.14 Mbps       18.00 Mbps          155.63 ms
 Mumbai, IN       378.37 Mbps       218.27 Mbps         233.36 ms
 Singapore, SG    349.69 Mbps       694.71 Mbps         179.95 ms
 Tokyo, JP        0.33 Mbps         45.12 Mbps          223.16 ms
----------------------------------------------------------------------
 Finished in        : 5 min 47 sec
 Timestamp          : 2023-11-14 07:35:11 UTC
 ----------------------------------------------------------------------

路由测试

  1. 查询本机到VPS路由
    1traceroute 目的IP
  2. 查询到本机路由

    Q 退出
    1mtr 本机IP

基本没啥问题


使用ipip查看本机IP

myip


使用ipip测试路由

  1. 工具 > TraceRoute

  2. 测试



保护措施


添加非root用户

root 权限较高, 使用非root用户执行需要较高权限的命令时会提示

  1. 添加用户

    1adduser <用户名>
  2. 添加权限

    1vi /etc/sudoers
    1# User privilege specification
    2root    ALL=(ALL:ALL) ALL
    3用户名   ALL=(ALL:ALL) ALL

    使用 wq! 保存

  3. 切换用户

    1su <用户名>

不允许root用户登录

  • 修改SSH配置

    1sudo vi /etc/ssh/sshd_config
    1PermitRootLogin no          
  • 重启SSH服务

    1sudo service sshd restart
  • 测试登录

    不允许使用root帐号登录

    Permission denied, please try again.

    1ssh <用户名>@<IP地址>

更改SSH端口

  • 查看端口使用情况

    1netstat -tunl
  • 修改SSH使用的端口

    默认使用22

    建议修改为10000 - 65535, 且是偶数

    1sudo vi /etc/ssh/sshd_config
    1#Port 22
    2Port <择定端口号>
  • 重启SSH服务

    1sudo service sshd restart
  • 测试登录

    使用22端口直接被拒绝

    Connection refused

    1ssh <用户名>@<IP地址> -p <端口号>

只支持密钥登录

说明:

  1. 我看到很多分享配置VPS使用SSH密钥登录的博客, 均是在VPS生成密钥, 并将私钥拷贝到本地, 在功能上这是没有问题的
  2. 参考GitHub配置SSH密钥登录, 是在本地生成密钥, 把公钥拷贝到帐号设置
  3. 公私钥职责的区分, 在于私钥的隐蔽性
  4. VPS的一个常用场景, 是多用户登录, 即用户们将自己的公钥追加到授权文件; 相应地, 管理多台VPS时, 在本地对密钥进行整理, 私钥用以登录, 公钥在VPS登记
  • 查看主机名

    1uname -a

    如有需求, 可以直接在控制台修改主机名

  • 在本地生成密钥

    1. 创建密钥文件夹

      1mkdir ~/.ssh/<密钥文件夹>
    2. 生成密钥

      1ssh-keygen

      提示 Enter file in which to save the key 时输入

      <密钥文件夹>/<密钥名>

      在密钥文件夹下得到两个文件

      -
      密钥名 私钥
      密钥名.pub 公钥
    3. 配置密钥文件夹和密钥权限

      修改权限:

      • XXX第一位对应文件所有者, 第二位对应用户组, 第三位对应其他用户
      • 6意味着可读写, 7意味着读写执行均可
      1chmod 700 .ssh/<密钥文件夹>
      2chmod 600 .ssh/<密钥文件夹>/<密钥名>
    4. 获取公钥内容

      1cat ~/.ssh/<密钥文件夹>/<密钥名>.pub
  • 在VPS上激活公钥

    1. 创建并配置授权文件
      1mkdir ~/.ssh
      2touch ~/.ssh/authorized_keys
      3
      4chmod 600 .ssh/authorized_keys
      5chmod 700 ~/.ssh
    2. 将公钥内容粘贴到授权文件
      1vi ~/.ssh/authorized_keys
  • 配置VPS支持SSH密钥登录

    1sudo vi /etc/ssh/sshd_config
    1PubkeyAuthentication yes          

    不用重启服务, 下次登录生效

  • 使用密钥登录VPS

    1ssh <用户名>@<IP地址> -p <端口号> -i ~/.ssh/<密钥文件夹>/<密钥名>
  • VPS关闭SSH密码登录

    1sudo vi /etc/ssh/sshd_config
    1PasswordAuthentication no          
  • 重启SSH服务

    关闭SSH密码登录

    1sudo service sshd restart
  • 测试登录

    未指定密钥直接被拒绝

    Permission denied (publickey).

  • iTerm2使用密钥登录

    macOS

    配置SSH信息

    -
    ~/.ssh/config SSH配置文件
    1. 配置本地SSH

      1vi ~/.ssh/config
      1Host <主机别名>
      2Hostname <IP地址>
      3Port <端口>
      4User <用户名>
      5IdentityFile ~/.ssh/<密钥文件夹>/<密钥名>             
    2. 登录

      1ssh <主机别名>

    Windows系统可以使用XShell或SecureCRT


避免暴力攻击

Fail2Ban

考虑到VPS IP可能暴露, 虽然限制了SSH只能使用密钥登录, 我们可以对具有风险的IP进行封禁

  1. 安装Fail2Ban

    1sudo apt-get install fail2ban
  2. 修改配置文件

    默认配置文件为 /etc/fail2ban/jail.conf , 我们新建 /etc/fail2ban/jail.local 并设置需要的配置项, 后者会覆盖前者同名配置项

    1sudo vi /etc/fail2ban/jail.local
    -
    logpath 日志路径
    maxretry 允许尝试次数
    bantime 封禁时间, -1为永久封禁
    1[sshd]
    2enable = ture
    3filter = sshd
    4port = <SSH登录端口号>
    5logpath = /var/log/auth.log
    6maxretry = 3
    7bantime = -1
  3. 启动服务

    1sudo systemctl start fail2ban
  4. 常用命令

    1w                                               # 查看当前服务器登录的用户
    2last                                            # 查看过去一段时间的登录用户
    3sudo systemctl enable fail2ban.service          # 开机启动
    4sudo systemctl status fail2ban.service          # 查看服务运行状态
    5sudo cat /var/log/fail2ban.log                  # 查看日志文件
    6sudo fail2ban-client status                     # 查看fail2ban的运行状态
    7sudo fail2ban-client status sshd                # 查看sshd的详细信息,包括封禁IP等
    8sudo fail2ban-client set sshd unbanip <指定IP>   # 解封指定IP
    9lastb -s 2023-11-6 -t 2023-11-7​                 # 查看指定时间内失败访问信息

限制服务端口

ufw

  1. 安装ufw

    Ubuntu默认安装
    1sudo apt-get install ufw
  2. 使能ufw
    1sudo ufw enable
  3. 未配置默认拒绝
    1sudo ufw default deny
  4. 查看当前状态
    1sudo ufw status
  5. 开启HTTP, HTTPS
    1sudo ufw allow http
    2sudo ufw allow https
  6. 开启SSH自定义端口
    1sudo ufw allow <择定端口>
    该命令会开启22端口, 我们不再需要
    1# sudo ufw allow ssh   # 默认22端口
  7. 删除已添加规则
    1# sudo ufw delete allow http
    添加SSL证书前还需要

TCP加速

Google BBR

全称 Bottleneck Bandwidth and Round-trip propagation time , 是Google推出的TCP拥塞控制算法

  1. 修改配置并使之生效
    1su root
    2echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
    3echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
    4sysctl -p
  2. 查看
    1lsmod | grep bbr
    成功开启输出
    tcp_bbr                20480  1       

可以改善的地方

  • 保持心跳

附注

nano使用Ctrl-X退出


便签

购买和配置VPS
便宜VPS 查看VPS优惠
瓦力箱子
leonis-服务器迁移
网络相关测试
查看端口使用情况
查看占用端口的应用程序
端口选择
创建删除用户
修改主机名
chmod命令
iTerm2配置SSH登录
SSH密钥登录
ufw
开启TCP BBR加速
VPS推荐

购买VPS



VPS

Virtual Private Servers

VPS可以简单地理解为运行在服务器上的虚拟机. 服务商对服务器的资源进行划分, 提供资源配置方案供客户选择, 按年或按月付费

购买后, 服务商为客户提供VPS的IP地址, 用户名和密码. 系统在购买时已安装好, 通常由用户选择VPS的搭载系统. 用户根据需求对VPS进行配置

VPS资源包括: CPU核, RAM, 硬盘内存, 带宽, 按月计算的流量


说明

用作博客服务器

绑定域名后, 博文跳转慢, 图片加载变成了动画…

图片加载可以通过图床解决, 这个选项延后考虑..

至于博文跳转慢, 购买国内VPS的提升肯定很好..

好吧, 我就是想搞博客一条龙🤷🏻‍♀️


购买VPS平台

国内VPS作为服务器, 需要备案, 相应的好处也很多, 一个字, 快. 看网上经验, 3-5天就可以通过, 资料填写貌似也不繁琐, 服务商有可能帮忙纠正

如果购买香港的就不用备案, 就我所知, 国内VPS服务商提供香港VPS, 但是贵

VPS不比域名, 随时可以更换, 完全可以从经济划算角度出发. 当然, 便宜没好货, 服务器的稳定性以及之后可能会遇到的一些问题都和平台有关, 购买平台的反馈就比较重要

VPS使用Linux系统, 如果购买国外服务器, 就不用配置源了. 从GitHub拉取项目自然也没得问题

国内VPS平台
阿里云
腾讯云
海外VPS平台
CloudCone
RackNerd

因为关注的博主这几天刚好发布了打折服务器的相关信息, 我也赶上活动, 在CloudCone购买了VPS


在CloudCone购买VPS

  1. 注册帐号

    他们家的折扣场需要帐号才能看到

  2. 帐号充值

    支持Paypal, 支付宝, 开通Visa或MasterCard的国内信用卡

  3. 选购VPS

    嘛, 搭建博客不需要很高的配置, 我整个照搬别人的

    -
    2 vCPU Cores 2核
    1GB RAM 1GB内存
    50GB Disk 50GB硬盘
    3TB/Mo Bandwidth at 1Gb/s 每月3TB, 带宽1Gb/s
    1 IPv4 提供1个IPv4

    性能的话2核1GB应该不会有问题, 其他的资源, 我觉得CloudCone挺大方的. 价格$16.5每年, 支付宝7.33的汇率, 折合人民币121块

    他们家没有什么花里胡哨的选项, 续费价格不变

    默认系统Ubuntu 22.04, 恰好合我心意

    哎呀, 为了我的虚荣心, 不得不提, 我之前的工作内容就涉及VPS, 不过我只管用. Centos和Ubuntu都耍过, Centos性能不用说, 我选择Ubuntu


设置VPS


检查IP联通性

ping.pe

会从全球各地ping给出的ip


-
Geo 地理位置信息
Loss 丢包率
Avg 平均时延

也可以使用ipip

ipip

  1. 使用ping工具


  2. 筛选测试地区



查看服务器参数并测速

使用 bench.sh

1apt-get install wget
2
3wget -qO- bench.sh | bash

测试数据和购买时的配置清单基本一致, 上传和下载速度符合描述

-------------------- A Bench.sh Script By Teddysun -------------------
 Version            : v2023-10-15
 Usage              : wget -qO- bench.sh | bash
----------------------------------------------------------------------
 CPU Model          : Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz
 CPU Cores          : 2 @ 2699.998 MHz
 CPU Cache          : 30720 KB
 AES-NI             : ✓ Enabled
 VM-x/AMD-V         : ✗ Disabled
 Total Disk         : 49.1 GB (3.7 GB Used)
 Total Mem          : 969.2 MB (168.0 MB Used)
 Total Swap         : 1023.0 MB (524.0 KB Used)
 System uptime      : 0 days, 0 hour 47 min
 Load average       : 0.01, 0.06, 0.02
 OS                 : Ubuntu 22.04.1 LTS
 Arch               : x86_64 (64 Bit)
 Kernel             : 5.15.0-46-generic
 TCP CC             : cubic
 Virtualization     : KVM
 IPv4/IPv6          : ✓ Online / ✗ Offline
 Organization       : AS35916 MULTACOM CORPORATION
 Location           : Los Angeles / US
 Region             : California
----------------------------------------------------------------------
 I/O Speed(1st run) : 394 MB/s
 I/O Speed(2nd run) : 368 MB/s
 I/O Speed(3rd run) : 303 MB/s
 I/O Speed(average) : 355.0 MB/s
----------------------------------------------------------------------
 Node Name        Upload Speed      Download Speed      Latency
 Speedtest.net    788.57 Mbps       754.65 Mbps         0.40 ms
 Los Angeles, US  861.12 Mbps       868.79 Mbps         1.04 ms
 Dallas, US       870.81 Mbps       110.27 Mbps         35.61 ms
 Montreal, CA     736.40 Mbps       449.70 Mbps         77.20 ms
 Paris, FR        613.82 Mbps       827.85 Mbps         144.43 ms
 Amsterdam, NL    628.46 Mbps       79.99 Mbps          139.20 ms
 Shanghai, CN     354.23 Mbps       60.92 Mbps          194.11 ms
 Hongkong, CN     580.14 Mbps       18.00 Mbps          155.63 ms
 Mumbai, IN       378.37 Mbps       218.27 Mbps         233.36 ms
 Singapore, SG    349.69 Mbps       694.71 Mbps         179.95 ms
 Tokyo, JP        0.33 Mbps         45.12 Mbps          223.16 ms
----------------------------------------------------------------------
 Finished in        : 5 min 47 sec
 Timestamp          : 2023-11-14 07:35:11 UTC
 ----------------------------------------------------------------------

路由测试

  1. 查询本机到VPS路由
    1traceroute 目的IP
  2. 查询到本机路由

    Q 退出
    1mtr 本机IP

基本没啥问题


使用ipip查看本机IP

myip


使用ipip测试路由

  1. 工具 > TraceRoute

  2. 测试



保护措施


添加非root用户

root 权限较高, 使用非root用户执行需要较高权限的命令时会提示

  1. 添加用户

    1adduser <用户名>
  2. 添加权限

    1vi /etc/sudoers
    1# User privilege specification
    2root    ALL=(ALL:ALL) ALL
    3用户名   ALL=(ALL:ALL) ALL

    使用 wq! 保存

  3. 切换用户

    1su <用户名>

不允许root用户登录

  • 修改SSH配置

    1sudo vi /etc/ssh/sshd_config
    1PermitRootLogin no          
  • 重启SSH服务

    1sudo service sshd restart
  • 测试登录

    不允许使用root帐号登录

    Permission denied, please try again.

    1ssh <用户名>@<IP地址>

更改SSH端口

  • 查看端口使用情况

    1netstat -tunl
  • 修改SSH使用的端口

    默认使用22

    建议修改为10000 - 65535, 且是偶数

    1sudo vi /etc/ssh/sshd_config
    1#Port 22
    2Port <择定端口号>
  • 重启SSH服务

    1sudo service sshd restart
  • 测试登录

    使用22端口直接被拒绝

    Connection refused

    1ssh <用户名>@<IP地址> -p <端口号>

只支持密钥登录

说明:

  1. 我看到很多分享配置VPS使用SSH密钥登录的博客, 均是在VPS生成密钥, 并将私钥拷贝到本地, 在功能上这是没有问题的
  2. 参考GitHub配置SSH密钥登录, 是在本地生成密钥, 把公钥拷贝到帐号设置
  3. 公私钥职责的区分, 在于私钥的隐蔽性
  4. VPS的一个常用场景, 是多用户登录, 即用户们将自己的公钥追加到授权文件; 相应地, 管理多台VPS时, 在本地对密钥进行整理, 私钥用以登录, 公钥在VPS登记
  • 查看主机名

    1uname -a

    如有需求, 可以直接在控制台修改主机名

  • 在本地生成密钥

    1. 创建密钥文件夹

      1mkdir ~/.ssh/<密钥文件夹>
    2. 生成密钥

      1ssh-keygen

      提示 Enter file in which to save the key 时输入

      <密钥文件夹>/<密钥名>

      在密钥文件夹下得到两个文件

      -
      密钥名 私钥
      密钥名.pub 公钥
    3. 配置密钥文件夹和密钥权限

      修改权限:

      • XXX第一位对应文件所有者, 第二位对应用户组, 第三位对应其他用户
      • 6意味着可读写, 7意味着读写执行均可
      1chmod 700 .ssh/<密钥文件夹>
      2chmod 600 .ssh/<密钥文件夹>/<密钥名>
    4. 获取公钥内容

      1cat ~/.ssh/<密钥文件夹>/<密钥名>.pub
  • 在VPS上激活公钥

    1. 创建并配置授权文件
      1mkdir ~/.ssh
      2touch ~/.ssh/authorized_keys
      3
      4chmod 600 .ssh/authorized_keys
      5chmod 700 ~/.ssh
    2. 将公钥内容粘贴到授权文件
      1vi ~/.ssh/authorized_keys
  • 配置VPS支持SSH密钥登录

    1sudo vi /etc/ssh/sshd_config
    1PubkeyAuthentication yes          

    不用重启服务, 下次登录生效

  • 使用密钥登录VPS

    1ssh <用户名>@<IP地址> -p <端口号> -i ~/.ssh/<密钥文件夹>/<密钥名>
  • VPS关闭SSH密码登录

    1sudo vi /etc/ssh/sshd_config
    1PasswordAuthentication no          
  • 重启SSH服务

    关闭SSH密码登录

    1sudo service sshd restart
  • 测试登录

    未指定密钥直接被拒绝

    Permission denied (publickey).

  • iTerm2使用密钥登录

    macOS

    配置SSH信息

    -
    ~/.ssh/config SSH配置文件
    1. 配置本地SSH

      1vi ~/.ssh/config
      1Host <主机别名>
      2Hostname <IP地址>
      3Port <端口>
      4User <用户名>
      5IdentityFile ~/.ssh/<密钥文件夹>/<密钥名>             
    2. 登录

      1ssh <主机别名>

    Windows系统可以使用XShell或SecureCRT


避免暴力攻击

Fail2Ban

考虑到VPS IP可能暴露, 虽然限制了SSH只能使用密钥登录, 我们可以对具有风险的IP进行封禁

  1. 安装Fail2Ban

    1sudo apt-get install fail2ban
  2. 修改配置文件

    默认配置文件为 /etc/fail2ban/jail.conf , 我们新建 /etc/fail2ban/jail.local 并设置需要的配置项, 后者会覆盖前者同名配置项

    1sudo vi /etc/fail2ban/jail.local
    -
    logpath 日志路径
    maxretry 允许尝试次数
    bantime 封禁时间, -1为永久封禁
    1[sshd]
    2enable = ture
    3filter = sshd
    4port = <SSH登录端口号>
    5logpath = /var/log/auth.log
    6maxretry = 3
    7bantime = -1
  3. 启动服务

    1sudo systemctl start fail2ban
  4. 常用命令

    1w                                               # 查看当前服务器登录的用户
    2last                                            # 查看过去一段时间的登录用户
    3sudo systemctl enable fail2ban.service          # 开机启动
    4sudo systemctl status fail2ban.service          # 查看服务运行状态
    5sudo cat /var/log/fail2ban.log                  # 查看日志文件
    6sudo fail2ban-client status                     # 查看fail2ban的运行状态
    7sudo fail2ban-client status sshd                # 查看sshd的详细信息,包括封禁IP等
    8sudo fail2ban-client set sshd unbanip <指定IP>   # 解封指定IP
    9lastb -s 2023-11-6 -t 2023-11-7​                 # 查看指定时间内失败访问信息

限制服务端口

ufw

  1. 安装ufw

    Ubuntu默认安装
    1sudo apt-get install ufw
  2. 使能ufw
    1sudo ufw enable
  3. 未配置默认拒绝
    1sudo ufw default deny
  4. 查看当前状态
    1sudo ufw status
  5. 开启HTTP, HTTPS
    1sudo ufw allow http
    2sudo ufw allow https
  6. 开启SSH自定义端口
    1sudo ufw allow <择定端口>
    该命令会开启22端口, 我们不再需要
    1# sudo ufw allow ssh   # 默认22端口
  7. 删除已添加规则
    1# sudo ufw delete allow http
    添加SSL证书前还需要

TCP加速

Google BBR

全称 Bottleneck Bandwidth and Round-trip propagation time , 是Google推出的TCP拥塞控制算法

  1. 修改配置并使之生效
    1su root
    2echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
    3echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
    4sysctl -p
  2. 查看
    1lsmod | grep bbr
    成功开启输出
    tcp_bbr                20480  1       

可以改善的地方

  • 保持心跳

附注

nano使用Ctrl-X退出


便签

购买和配置VPS
便宜VPS 查看VPS优惠
瓦力箱子
leonis-服务器迁移
网络相关测试
查看端口使用情况
查看占用端口的应用程序
端口选择
创建删除用户
修改主机名
chmod命令
iTerm2配置SSH登录
SSH密钥登录
ufw
开启TCP BBR加速
VPS推荐