分类 分享 下的文章

配置

  1. 【开启权限】第一步需要做的就是开启可以运行自己应用的权限。Additional services -> Run your own applications -> Enabled 如果不开启这一项,自己的用户目录下的所有文件都无法添加可执行权限。
  2. 【进入SSH】通过注册邮箱里收到的信息,用任意一个shell客户端登录,就可以看到下面的信息。
  ____                   ___   ___
 / ___|  ___ _ ____   __/ _ \ / _ \  ___ ___  _ __ ___
 \___ \ / _ \ '__\ \ / / | | | | | |/ __/ _ \| '_ ` _ \
  ___) |  __/ |   \ V /| |_| | |_| | (_| (_) | | | | | |
 |____/ \___|_|    \_/  \___/ \___(_)___\___/|_| |_| |_|
  Revolutionary Free Hosting

 =[ Basic account info ]=
         Username: xxx
             Plan: FREE
  Expiration date: 2034-03-13 02:18:41

安装PM2

PM2 是一款非常优秀的node.js进程管理工具。可以通过SSH用下面的指令一键安装。

bash <(curl -s https://raw.githubusercontent.com/k0baya/alist_repl/main/serv00/install-pm2.sh)

使用pm2,请直接用路径调用:~/.npm-global/bin/pm2,例如~/.npm-global/bin/pm2 list 就可以看到自己添加的应用。

安装 v2ray (可以直接看②)

① 查看系统

回到之前登录的 ssh 界面
输入 uname -a 查看服务器系统

FreeBSD s2.serv00.com 13.2-RELEASE-p10 FreeBSD 13.2-RELEASE-p10 #4 releng/13.2-n254661-a839681443b6-dirty: Tue Feb 20 23:03:40 CET 2024 [email protected]:/usr/obj/usr/src/amd64.amd64/sys/devil amd64

我这儿返回的是这样的,FreeBSD amd64

② 下载 v2ray

cd ./domains/ 
mkdir v2ray 
cd v2ray 
wget https://github.com/v2fly/v2ray-core/releases/download/v5.14.1/v2ray-freebsd-64.zip #选择对应系统的版本下载v2ray

(可以不用看)

由于没有 root 权限,我们无法使用官方提供的一键安装脚本,只能自行手动安装。前往 https://github.com/v2fly/v2ray-core/releases 找到你的系统版本所对应的 v2ray 版本
我这个服务器的系统是 FreeBSD amd64,那么我就找的是 freebsd-64.zip
右键这个 zip 地址,复制下载连接。
然后回到 ssh 中,输入代码

等待下载完成之后,ls 查看当前目录文件,可以看到这个 zip 包已经在这个目录里了。

③ 配置 v2ray

还是在刚刚的 v2ray 目录下

unzip v2ray-freebsd-64.zip #这边换成你刚刚下载的对应的zip包

然后等待解压完成,再执行 ls 命令时能看到很多个文件

./v2ray version

先验证下能否正常启动
V2Ray 5.14.1 (V2Fly, a community-driven edition of V2Ray.) Custom (go1.22.0 freebsd/amd64) A unified platform for anti-censorship.
我这边正确的返回版本号了,如果提示其他异常的话,请检查一下下载的 v2ray 版本是否是你服务器系统所适配的版本。

./v2ray uuid

这边生成一个 uuid 后面配置的时候会用到

④ 配置 config

在serv00的管理页面上开启一个端口,Port reservation -> Add port添加一个TCP的端口号。再在File Manager 里面找到v2ray的文件下的config.json文件,把里面内容替换为下面内容。其中port和id需要改动。

{
    "log": {
        "loglevel": "warning"
    },
    "routing": {
        "domainStrategy": "AsIs",
        "rules": [
            {
                "type": "field",
                "ip": [
                    "geoip:private"
                ],
                "outboundTag": "block"
            }
        ]
    },
    "inbounds": [
        {
            "listen": "0.0.0.0",
            "port": xxxx,  //你的端口
            "protocol": "vless",
            "settings": {
              "decryption":"none",
                "clients": [
                    {
                        "id": "你的uuid"
                        
                    }
                ]
            },
            "streamSettings": {
                "network": "tcp"
            }
        }
    ],
    "outbounds": [
        {
            "protocol": "freedom",
            "tag": "direct"
        },
        {
            "protocol": "blackhole",
            "tag": "block"
        }
    ]
}

⑤ 启动 v2ray

pm2 start ./v2ray --name my-v2ray -- run
~/.npm-global/bin/pm2 save

启动本地代理

接着去你的代理客户端软件中手动添加vless配置即可:

KeyValue
地址Panel 中 WWW Websites 选项卡里的你的 Domain name
端口你放行的端口
用户 IDuuid

上表没有给出的可以不填。

自动化

听说serv00会不定时重启机器,所以我们把PM2添加开机自启。而且serv00每三个月内必须要有一次登录面板或者SSH连接,不然会删号,也可以通过一个脚本解决问题,接下来我会详细说明。

自动续期

新建 auto-renew.sh 脚本:

cat > auto-renew.sh << EOF
#!/bin/bash

while true; do
  sshpass -p '密码' ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -tt 用户名@地址 "exit" &
  sleep 259200  #30天为259200秒
done
EOF

我是新建了一个opt目录,在opt目录下创建这个脚本。另外记得把其中的密码、用户名、ssh的地址修改为你自己的。

给 auto-renew.sh添加可执行权限:

chmod +x auto-renew.sh

使用PM2启动:

~/.npm-global/bin/pm2 start ./auto-renew.sh

这样就会每隔一个月自动执行一次SSH连接,自己SSH自己进行续期。

自动启动

在serv00的管理页面上找到Cron jobs选项卡,使用Add cron job功能添加任务,Specify time选择After reboot,即为重启后运行。Form type选择Advanced,Command写:

/home/你的用户名/.npm-global/bin/pm2 resurrect

添加完之后,在SSH窗口保存PM2的当前任务列表快照:

~/.npm-global/bin/pm2 save

这样每次serv00不定时重启任务时,都能自动调用PM2读取保存的任务列表快照,恢复任务列表。如果在保存了任务列表快照后又改变了任务PM2的任务列表,需要重新执行pm2 save以更新任务列表。

参考链接:

  1. serv00免费10年虚拟主机安装PM2和Vless
  2. 非 root 用户自建 v2ray 梯子 (serv00-vmess)

  1. 创建 systemd 服务文件

    首先,创建一个新的 systemd 服务文件:

    sudo nano /etc/systemd/system/syncthing.service
  2. 添加以下内容到服务文件

    [Unit]
    Description=Syncthing - Open Source Continuous File Synchronization
    Documentation=https://docs.syncthing.net/
    After=network.target
    
    [Service]
    User=your_username
    ExecStart=/opt/syncthing/syncthing -no-browser
    Restart=on-failure
    RestartSec=5
    
    [Install]
    WantedBy=multi-user.target

    请将 your_username 替换为实际的用户名。

  3. 重新加载 systemd 配置

    sudo systemctl daemon-reload
  4. 启用并启动 Syncthing 服务

    sudo systemctl enable syncthing
    sudo systemctl start syncthing

检查 Syncthing 状态

使用以下命令来检查 Syncthing 是否正在运行:

systemctl status syncthing

或者,如果你使用了 init.d:

sudo service syncthing status

清华大学镜像站:

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security/ buster/updates main contrib non-free

中科大镜像站:

deb https://mirrors.ustc.edu.cn/debian/ buster main contrib non-free
deb https://mirrors.ustc.edu.cn/debian/ buster-updates main contrib non-free
deb https://mirrors.ustc.edu.cn/debian/ buster-backports main contrib non-free
deb https://mirrors.ustc.edu.cn/debian-security/ buster/updates main contrib non-free

阿里云镜像站:

deb http://mirrors.aliyun.com/debian/ buster main contrib non-free
deb http://mirrors.aliyun.com/debian-security buster/updates main
deb http://mirrors.aliyun.com/debian/ buster-updates main contrib non-free
deb http://mirrors.aliyun.com/debian/ buster-backports main contrib non-free

上海交大镜像站:

deb https://mirror.sjtu.edu.cn/debian/ buster main contrib non-free
deb https://mirror.sjtu.edu.cn/debian/ buster-updates main contrib non-free
deb https://mirror.sjtu.edu.cn/debian/ buster-backports main contrib non-free
deb https://mirror.sjtu.edu.cn/debian-security/ buster/updates main contrib non-free

OIP-C

下载arm版本客户端

image-20240724142547411

电脑本地解压缩后上传玩客云,建议是放到/opt文件夹中
给syncthing执行权限
运行syncthing
su - xxx #换成其他用户syncthing不支持root用户运行
./syncthing

随后就会看到有很多信息,看到类似以下内容的时候就可以按 CTRL-C 退出程序了:

[OH4IP] 13:32:15 INFO: Completed initial scan (rw) of folder edatb-zzc5f
[OH4IP] 13:32:15 INFO: Device OH4IPQD-QDCDAZB-YMMZE4F-BAK4BLQ-3EZLPTD-V73J37V-LTW44V6-YSM6JQ7 is "ruter.ga" at [dynamic]
[OH4IP] 13:32:15 INFO: Loading HTTPS certificate: open /root/.config/syncthing/https-cert.pem: no such file or directory
[OH4IP] 13:32:15 INFO: Creating new HTTPS certificate
[OH4IP] 13:32:15 INFO: GUI and API listening on 127.0.0.1:8384
[OH4IP] 13:32:15 INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
[OH4IP] 13:32:16 INFO: Detected 0 NAT devices

我们第一次运行是为了让它创建配置文件,然后我们再进行修改。用以下命令对配置文件进行编辑:

vim /home/xxx/.local/state/syncthing/config.xml  #xxx是你的用户名

到下面这几行:

<gui enabled="true" tls="false" debugging="false">
    <address>127.0.0.1:8384</address>
    <apikey>2GeGJK9z6tXKP3nHJYU56ZHoYSYnqQ9S</apikey>
    <theme>default</theme>
</gui>

然后把 IP 127.0.0.1 修改成 0.0.0.0 即可保存退出:

<gui enabled="true" tls="false" debugging="false">
    <address>0.0.0.0:8384</address>
    <apikey>2GeGJK9z6tXKP3nHJYU56ZHoYSYnqQ9S</apikey>
    <theme>default</theme>
</gui>

设置好之后执行 syncthing 运行,就可以通过 http://your_ip_addr:8384 来进行访问管理了,如果直接通过外网 IP:端口访问还是无法打开管理页面,那就需要进行防火墙的设置开启 `8384端口了:

iptables -I INPUT -p tcp --dport 8384 -j ACCEPT
service iptables save
service iptables restart
syncthing

再次打开 http://your_ip_addr:8384 就能看见管理页面了

1

可以很明显地看到一条警告信息,提醒我们设置管理用户及密码,点击「设置」,然后把「用户名」和「密码」填写好,「使用加密连接到图形管理页面」这个是开启HTTPS,按需勾选

image-20240724143655837

同步

打开本地管理页面 http://127.0.0.1:8384/,然后点击「添加远程设备」将VPS添加到同步列表里,其中「设备ID」需要在VPS的管理页面打开「操作」–「显示ID」查看,将ID复制到「设备ID」一栏中,「地址列表」默认使用 dynamic 即可,其他按需修改

image-20240724143713764

保存之后我们可以在 VPS 端的管理页面上看见连接请求

image-20240724143733362

添加成功后会有共享文件夹的提示

image-20240724143752798

为了测试文件同步是否成功,我在本地同步路径 C:\Users\Administrator\Sync 添加了一个文件 ROR.txt,自动同步完成后可以在VPS端管理页面看到「最后接收的文件」显示「已更新 ROR.txt」

image-20240724143814067

进阶

在服务器上使用Syncthing可以修改配置文件后使用外网进行访问管理,本地端也可以如法炮制,如果没有外网IP则需要使用花生壳之类的进行映射,具体操作请移步Google :)

Syncthing有一些高级的功能前面没有提及,例如每个共享的文件夹都可以在「选项」内打开「高级设置」,进行一些设置,如开启「版本控制」。

通过Syncthing共享的文件夹,被取消共享后,本地已经同步的文件也依然会存在。

除了自己使用,在小圈子内也是很有利用价值,例如共享资源什么的,再也不用忍受各种网盘的龟速上传下载以及删资源啦!

由「玩物志」Syncthing的安装与使用修改

nmap

前言

在网络管理和安全分析中,了解网络中的设备和它们的状态是至关重要的。Nmap(Network Mapper)是一款功能强大的开源工具,广泛用于网络扫描和安全审核。为了方便更多用户使用,Nmap还提供了一个图形用户界面(GUI)——Zenmap。本篇博客将详细介绍如何使用Nmap和Zenmap进行网络扫描,包括安装步骤、基本命令和图形界面的使用方法。

Nmap基本使用方法

安装Nmap

Windows
  1. 下载Nmap安装程序:Nmap Download
  2. 运行安装程序并按照提示完成安装。
macOS

使用Homebrew安装:

brew install nmap
Linux

大多数Linux发行版的包管理器中都有Nmap,例如在Debian/Ubuntu上:

sudo apt-get install nmap

使用Nmap的基本命令

windows 使用cmd命令行
  1. 扫描单个IP地址

    nmap 192.168.1.1

    这将扫描192.168.1.1上的开放端口。

  2. 扫描整个子网

    nmap 192.168.1.0/24

    这将扫描192.168.1.0到192.168.1.255范围内的所有IP地址。

  3. 扫描特定端口

    nmap -p 80 192.168.1.1

    这将扫描192.168.1.1上的端口80。

  4. 扫描多个端口

    nmap -p 22,80,443 192.168.1.1

    这将扫描192.168.1.1上的端口22、80和443。

  5. 扫描常用端口

    nmap -F 192.168.1.1

    这将快速扫描192.168.1.1上的前100个常用端口。

  6. 操作系统检测

    sudo nmap -O 192.168.1.1

    这将尝试检测目标主机的操作系统。需要root权限。

  7. 服务版本检测

    nmap -sV 192.168.1.1

    这将检测目标主机上运行的服务版本。

  8. 扫描启发式探测(Stealth Scan)

    sudo nmap -sS 192.168.1.1

    这是一种半开放扫描方法,适用于不想在目标系统上留下扫描痕迹的场景。

  9. 使用脚本扫描 Nmap包含一个强大的脚本引擎(NSE),可以执行各种扫描任务:

    nmap --script=banner 192.168.1.1

    这将使用banner脚本来获取服务横幅信息。

保存扫描结果

  1. 保存到文本文件

    nmap -oN output.txt 192.168.1.1

    将扫描结果保存到文本文件output.txt。

  2. 保存到XML文件

    nmap -oX output.xml 192.168.1.1

    将扫描结果保存到XML文件output.xml。

  3. 保存到Grepable文件

    nmap -oG output.gnmap 192.168.1.1

    将扫描结果保存到Grepable格式文件output.gnmap。

Zenmap的使用教程

Nmap有一个名为Zenmap的图形用户界面(GUI),可以方便地进行网络扫描。以下是如何使用Zenmap的详细教程:

安装Zenmap

Windows
  1. 下载Nmap安装程序,其中包含Zenmap:Nmap Download
  2. 运行安装程序并选择安装Zenmap。
macOS

使用Homebrew安装Nmap:

brew install nmap

然后下载Zenmap的macOS版本:Zenmap Download for macOS

Linux

在大多数Linux发行版上,你可以通过包管理器安装Zenmap。例如,在Debian/Ubuntu上:

sudo apt-get install zenmap

使用Zenmap的基本教程

  1. 启动Zenmap

    • 在Windows上,双击Zenmap图标启动程序。
    • 在macOS和Linux上,可以在终端中输入zenmap启动,或者通过应用程序菜单启动。
  2. 主界面介绍 Zenmap的主界面分为几个主要部分:

    • Command:输入要执行的Nmap命令。
    • Target:输入要扫描的目标IP地址或范围。
    • Profile:选择预定义的扫描配置文件(如Quick scan, Intense scan等)。
    • Scan:点击开始扫描。
    • Output:显示扫描结果。
    • Topology:显示网络拓扑图。
    • Host Details:显示详细的主机信息。
  3. 执行基本扫描

    • 在Target栏中输入目标IP地址或IP范围,例如192.168.1.0/24。
    • 在Profile下拉菜单中选择扫描类型,例如Intense scan。
    • 点击Scan按钮开始扫描。
  4. 查看扫描结果

    • 在Output标签中,可以查看文本格式的扫描结果。
    • 在Host Details标签中,可以查看选定主机的详细信息,包括开放端口、操作系统等。
    • 在Topology标签中,可以查看网络的拓扑图,显示扫描的各个主机及其连接关系。
  5. 保存扫描结果

    • 在File菜单中选择Save Scan,可以将扫描结果保存为不同格式(如文本文件、XML文件等)。
  6. 自定义扫描命令

    • 如果预定义的配置文件不能满足需求,可以在

      Command

      栏中手动输入Nmap命令。例如,要进行操作系统检测,可以输入:

      nmap -O 192.168.1.0/24
    • 然后点击Scan按钮执行命令。
  7. 使用脚本

    • Zenmap也支持Nmap的脚本引擎(NSE)。在

      Command

      栏中,可以使用--script选项指定脚本。例如,要使用banner脚本,可以输入:

      nmap --script=banner 192.168.1.0/24
    • 然后点击Scan按钮执行命令。

图形化拓扑图的使用

  • 在扫描完成后,切换到Topology标签,可以看到一个图形化的网络拓扑图。
  • 可以缩放和拖动图形,以便更好地查看网络结构。
  • 点击图中的主机节点,可以在Host Details标签中查看该主机的详细信息。

常用扫描配置文件

Zenmap预定义了几个常用的扫描配置文件,可以根据需要选择:

  • Quick scan:快速扫描常用端口。
  • Quick scan plus:快速扫描常用端口,并进行版本检测。
  • Intense scan:对目标进行全面扫描,包括操作系统检测、服务版本检测等。
  • Ping scan:仅检测哪些主机在线,而不扫描端口。

后话

通过本文的介绍,大家应该对Nmap和Zenmap的基本使用方法有了一个全面的了解。这两款工具在网络管理和安全分析中都有着广泛的应用。Nmap的命令行功能强大而灵活,适合需要深入分析网络的专业人员;而Zenmap则提供了友好的图形界面,使得网络扫描更加直观和方便。希望这篇博客能帮助你更好地进行网络扫描和管理。