静看光阴荏苒
不管不顾不问不说也不念

Remnawave:一个基于Xray-core的代理管理面板

最近发现了一个俄罗斯人开发的代理面板:Remnawave,我被其颜值深深吸引了,然后安装试了一下发现这面板还挺好用,中看又中用的那种!遂记录下折腾笔记。

先简单说一下个人使用体验,因为这个面板基于Xray-core,所以有些协议是没办法支持的,比如hy2,anytls这些,算是小小的遗憾吧。这是我最不爽的地方,不过也没办法。当然也有亮点,那就是最近Xray-core新出的xhttp。只能说有得有失=。=

然后这个面板要上手的话还是有点难度的,它有几个概念初次用的话可能会有点摸不着头脑,这些稍后再详细说。

再就是虽然它是一个面板,但还是需要你自己搓配置文件,无论是Xray-core的配置还是订阅用到的json配置都是需要自己手搓的。虽然官方有提供一些配置模板,但是实测下来都不太适合中国用户使用。

那这篇文章先记录下安装的步骤,实际上官方的安装文档写的很详细了,但是我用来部署的这台机器有点特殊(没有公网IP)所以我没有用NGINX反代,而是用的Pangolin。至于Pangolin是什么,可以先看看这篇文章

安装Docker:

apt -y update
apt -y install curl
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

创建目录,在目录内下载compose文件和.env配置文件:

mkdir /opt/remnawave && cd /opt/remnawave
curl -o docker-compose.yml https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/docker-compose-prod.yml
curl -o .env https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/.env.sample

配置.env文件,生成secure keys,程序安全运行的保障,必须设置复杂一点,可以用下面的命令自动生成:

sed -i "s/^JWT_AUTH_SECRET=.*/JWT_AUTH_SECRET=$(openssl rand -hex 64)/" .env && sed -i "s/^JWT_API_TOKENS_SECRET=.*/JWT_API_TOKENS_SECRET=$(openssl rand -hex 64)/" .env

生成密码,注意这个密码不是管理员的密码,这个密码仅仅用作访问后端的一些服务用,一般是不需要用到的,也可以用下面的命令自动生成:

sed -i "s/^METRICS_PASS=.*/METRICS_PASS=$(openssl rand -hex 64)/" .env && sed -i "s/^WEBHOOK_SECRET_HEADER=.*/WEBHOOK_SECRET_HEADER=$(openssl rand -hex 64)/" .env

修改POSTGRES数据库密码,使用下面的命令自动生成一个随机密码即可:

pw=$(openssl rand -hex 24) && sed -i "s/^POSTGRES_PASSWORD=.*/POSTGRES_PASSWORD=$pw/" .env && sed -i "s|^\(DATABASE_URL=\"postgresql://postgres:\)[^\@]*\(@.*\)|\1$pw\2|" .env

再手动编辑.env配置文件:

nano .env

修改如下配置为你的域名,我这里演示就用example.com:

FRONT_END_DOMAIN=remnawave.example.com
SUB_PUBLIC_DOMAIN=remnawave.example.com/api/sub

启动:

docker compose up -d

现在需要配置反向代理,我这里用Pangolin来反代,因为我这机器没有公网IP(我自己的Proxmox VE开的小鸡)。如果你是有公网IP的机器可以直接参考官方的反代文档

在Pangolin里面创建站点,隧道类型选择Newt:

往下看会有Linux系统安装的命令,但是这个仅在前台运行:

wget -O newt "https://github.com/fosrl/newt/releases/download/1.4.2/newt_linux_amd64" && chmod +x ./newt
mv newt /usr/local/bin

现在要让它在后台一直运行,需要创建一个systemd服务:

nano /etc/systemd/system/newt.service

写入如下配置:

[Unit]
Description=Newt
After=network.target
[Service]
ExecStart=/usr/local/bin/newt --id yourid --secret yoursecret --endpoint https://pangolin.example.com
Restart=always
User=root
[Install]
WantedBy=multi-user.target

启动并设置开机自启:

systemctl enable --now newt.service

确保它是在线的状态:

接下来创建资源,指定刚创建的站点,并设置一个子域名,这个域名就是用来访问Remnawave的:

资源创建完成后,首先来到Authentication,将Pangolin自带的这个验证功能关掉:

来到Proxy–>Targets Configuration,按如图所示添加一个代理,IP/Hostname:127.0.0.1,Port:3000:

如果正常的话现在就能通过remnawave.example.com访问到Remnawave面板了。创建你的管理员账号并登录,这就是Remnawave面板首页的样子:

这篇文章就先写到这里,下篇文章介绍Remnawave节点的安装与配置。

赞(0)
未经允许不得转载:荒岛 » Remnawave:一个基于Xray-core的代理管理面板
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

分享创造快乐

广告合作资源投稿