千家信息网

Linux中怎么安装BTCPayServer

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,今天就跟大家聊聊有关Linux中怎么安装BTCPayServer,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。安装依赖项要运行BTCPaySe
千家信息网最后更新 2026年11月02日Linux中怎么安装BTCPayServer

今天就跟大家聊聊有关Linux中怎么安装BTCPayServer,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

安装依赖项

要运行BTCPayServer,你需要安装.NET Core SDK,NBXplorer和PostgreSQL。

安装.NET Core SDK

转到下载文件夹或用于存储临时文件的任何其他文件夹:

cd ~/Downloads

并下载.NET Core SDK所需的Microsoft软件包:

wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpgsudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/wget -q https://packages.microsoft.com/config/ubuntu/$(lsb_release -sr)/prod.listsudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list

更新包缓存并安装.NET Core:

sudo apt-get install apt-transport-httpssudo apt-get updatesudo apt-get install dotnet-sdk-2.1

安装NBXplorer

我们需要安装NBXplorer才能跟踪传入的链上交易。

如果你还没有创建源文件夹并打开它:

mkdir ~/sourcecd ~/source

克隆存储库并构建代码:

git clone https://github.com/dgarage/NBXplorercd NBXplorer./build.sh

创建数据文件夹:

mkdir -p ~/.nbxplorer/Maincd ~/.nbxplorer/Main

新的配置文件:

touch settings.config

使用你选择的编辑器打开文件并添加以下行:

btc.rpc.auth=:port=24445mainnet=1

确保使用你的bitcoind的rpc登录凭据。你可以使用以下命令找到它们:

cat ~/.bitcoin/bitcoin.conf | grep rpc

测试是否所有设置都正确:

/usr/bin/dotnet ~/source/NBXplorer/NBXplorer/bin/Release/netcoreapp2.1/NBXplorer.dll -c ~/.nbxplorer/Main/settings.config

如果是这样,输入ctrl + c终止进程并下载Systemd服务:

cd /usr/lib/systemd/systemsudo wget https://gist.githubusercontent.com/mariodian/de873b969e70eca4d0a7673efd697d0a/raw/acfc70c5694cd53d8a3df7ff54a35ff2caba7532/nbxplorer.service

根据你的环境编辑文件。

启用服务,启动它并检查状态:

sudo systemctl enable nbxplorer.servicesudo service nbxplorer startsudo service nbxplorer status

如果你没有看到错误,请转到下一步。

安装PostgreSQL

我无法使用MySQL/MariaDB设置BTCPayServer,所以我被迫使用PostgreSQL。

首先安装它并以新创建的系统用户身份打开shell提示符:

sudo apt install postgresql postgresql-contribsudo -i -u postgres

创建一个新的数据库用户:

createuser --pwprompt --interactive

输入以下内容(你可以将satoshi更改为你喜欢的任何用户名):

创建一个新数据库:

createdb -O satoshi btcpayserver

如果你看到没有错误退出shell:

exit

安装BTCPayServer

克隆存储库并构建代码:

cd ~/sourcegit clone https://github.com/btcpayserver/btcpayserver.gitcd btcpayserver./build.sh

创建一个数据文件夹:

mkdir -p ~/.btcpayserver/Maincd ~/.btcpayserver/Main

一个新的配置文件:

touch settings.config

获取LND的证书指纹并将其粘贴到下面的配置文件中。

openssl x509 -noout -fingerprint -sha256 -inform pem -in ~/.lnd/tls.cert

打开settings.config并添加以下行:

network=mainnetport=23001bind=0.0.0.0chains=btcBTC.explorer.url=http://127.0.0.1:24445BTC.lightning=type=lnd-rest;server=https://127.0.0.1:8080/;macaroonfilepath=~/.lnd/data/chain/bitcoin/mainnet/admin.macaroon;certthumbprint=postgres=User ID=;Password=;Host=localhost;Port=5432;Database=btcpayserver;

根据你的设置更改突出显示的变量variables。

检查一切是否正常。

/usr/bin/dotnet run -p ~i/source/btcpayserver/BTCPayServer/BTCPayServer.csproj -c ~/.btcpayserver/Main/settings.config --network=mainnet

如果是这样,输入ctrl + c终止进程并下载Systemd服务:

cd /usr/lib/systemd/systemsudo wget https://gist.githubusercontent.com/mariodian/07bb13da314e2a321784b380f543651a/raw/6cef554d9e8311e683a017d5e63a07822dee7642/btcpayserver.service

根据你的环境编辑文件。

启用该服务,启动它并检查它是否正常运行:

sudo systemctl enable btcpayserver.servicesudo service btcpayserver startsudo service btcpayserver status

恭喜,你刚刚度过了最难的部分!

允许传入连接(可选)

如果要远程运行服务器,则必须打开端口23001。

首先,转到路由器设置并找到虚拟服务器Virtual Server或端口转发Port Forwarding的部分,并在上述端口上设置端口转发。

然后回到你的linux机器并用iptables打开端口:

sudo iptables -A INPUT -p tcp --dport 23001 -j ACCEPT

如果你使用iptables-save也运行以下命令:

sudo iptables-save > /etc/iptables/rules.v4

你现在应该可以从另一台计算机连接到你的服务器。

设置BTCPayServer

转到你的BTCPayServer管理,注册一个新的管理员帐户并登录。

现在,转到Stores并单击Create a new store。完成后,转到商店设置并向下滚动到Derivation Scheme。

在BTC下单击修改Edit,然后在计算机或手机上打开支持BIP32的钱包。

出于本教程的目的,我将使用Electrum。

建议你创建一个新的钱包,而不是使用旧钱包,这样你就不必费心地重新扫描地址上的余额了。

完成后,单击Wallet -> Information,复制主公钥,将其粘贴回BTCPayServer管理,选中已启用,然后保存。

接下来,向下滚动到Lightning nodes (Experimental),然后单击修改modify。

应该设置你的连接字符串,但如果没有,请粘贴以下内容:

type=lnd-rest;server=https://127.0.0.1:8080/;macaroonfilepath=/home/satoshi/.lnd/data/chain/bitcoin/mainnet/admin.macaroon;certthumbprint=

请记住添加你之前获得的LND证书指纹,并将主目录更改为你自己的目录。

单击测试连接Test connection,如果一切正常,请选中已启用Enable并单击提交submit。

在这种情况下,服务器在你要通过域名访问的单独计算机上运行,转到Server Settings -> Maintenance,并在Change domain name添加你的名称(当然,你必须购买它)。

你还必须根据你的设置向你的域名提供商添加CNAME或A DNS记录。对不起,我无法帮助你,提供者太多了。

现在,你应该可以使用新域名访问BTCPayServer管理,如下所示: http://domain.ltd:23001。

要创建POS终端,请转到 Apps -> Create a new app并填写简短表单。然后,你将进入应用程序设置,你可以通过模板更改项目列表。

你还可以在网站中添加一个简单的付款按钮,你可以在 Stores -> Settings -> Pay Button中配置,也可以在Stores -> Invoices -> Create a new invoice中手动创建发票。然后,你可以发送给客户。

当然,支付网关的前端设计是完全可定制的,因此你可以设置自己的徽标和颜色。

设置SSL加密证书(可选)

首先让我们安装将用作反向代理的Apache 2。

sudo apt-get install apache2

启用所需模块:

sudo a2enmod rewritesudo a2enmod proxysudo a2enmod proxy_httpsudo a2enmod proxy_ajpsudo a2enmod deflatesudo a2enmod headerssudo a2enmod proxy_balancersudo a2enmod proxy_connectsudo a2enmod proxy_html

重启服务器:

sudo systemctl restart apache2

为你的域名安装Let's加密证书。但你可以使用任何其他证书颁发机构。

用以下内容替换/etc/apache2/sites-enabled/000-default.conf的内容:

        ServerAdmin webmaster@localhost        ServerName btcpay.freedomnode.com        RewriteEngine on        RewriteCond %{SERVER_NAME} =btcpay.freedomnode.com        RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]        ErrorLog ${APACHE_LOG_DIR}/error.log        CustomLog ${APACHE_LOG_DIR}/access.log combined

根据你的需要更改ServerName。

然后,使用以下内容替换/etc/apache2/sites-enabled/000-default-le-ssl.conf的内容:

        ServerAdmin webmaster@localhost        ServerName btcpay.freedomnode.com        ErrorLog ${APACHE_LOG_DIR}/error.log        CustomLog ${APACHE_LOG_DIR}/access.log combined        ProxyPass "/"  "http://127.0.0.1:23001/"        ProxyPassReverse / "http://127.0.0.1:23001/"        ProxyPreserveHost On        SSLCertificateFile /etc/letsencrypt/live/btcpay.freedomnode.com/fullchain.pem        SSLCertificateKeyFile /etc/letsencrypt/live/btcpay.freedomnode.com/privkey.pem        Include /etc/letsencrypt/options-ssl-apache.conf

再次,编辑ServerName并确保SSLCertificateFile和SSLCertificateKeyFile指向正确的文件。

重新加载服务器:

sudo systemctl reload apache2

现在回到~/.btcpayserver/Main/settings.config并添加:

externalurl=HTTPS://btcpay.freedomnode.com

再次将服务器名称更改为你自己的名称。

你还可以从配置中删除bind=0.0.0.0,因为远程连接将从现在开始通过Apache进行代理。

重启BTCPayServer:

sudo service btcpayserver restart

打开浏览器并检查新安装的SSL证书是否正常工作。

======================================================================

分享一些比特币、以太坊、EOS、Fabric等区块链相关的交互式在线编程实战教程:

  • java比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Java工程师不可多得的比特币开发学习课程。

  • php比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Php代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是Php工程师不可多得的比特币开发学习课程。

  • c#比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在C#代码中集成比特币支持功能,例如创建地址、管理钱包、构造裸交易等,是C#工程师不可多得的比特币开发学习课程。

  • java以太坊开发教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。

  • python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。

  • php以太坊,主要是介绍使用php进行智能合约开发交互,进行账号创建、交易、转账、代币开发以及过滤器和交易等内容。

  • 以太坊入门教程,主要介绍智能合约与dapp应用开发,适合入门。

  • 以太坊开发进阶教程,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。

  • ERC721以太坊通证实战,课程以一个数字艺术品创作与分享DApp的实战开发为主线,深入讲解以太坊非同质化通证的概念、标准与开发方案。内容包含ERC-721标准的自主实现,讲解OpenZeppelin合约代码库二次开发,实战项目采用Truffle,IPFS,实现了通证以及去中心化的通证交易所。

  • C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括账户管理、状态与交易、智能合约开发与交互、过滤器和交易等。

  • EOS入门教程,本课程帮助你快速入门EOS区块链去中心化应用的开发,内容涵盖EOS工具链、账户与钱包、发行代币、智能合约开发与部署、使用代码与智能合约交互等核心知识点,最后综合运用各知识点完成一个便签DApp的开发。

  • 深入浅出玩转EOS钱包开发,本课程以手机EOS钱包的完整开发过程为主线,深入学习EOS区块链应用开发,课程内容即涵盖账户、计算资源、智能合约、动作与交易等EOS区块链的核心概念,同时也讲解如何使用eosjs和eosjs-ecc开发包访问EOS区块链,以及如何在React前端应用中集成对EOS区块链的支持。课程内容深入浅出,非常适合前端工程师深入学习EOS区块链应用开发。

  • Hyperledger Fabric 区块链开发详解,本课程面向初学者,内容即包含Hyperledger Fabric的身份证书与MSP服务、权限策略、通道配置与启动、链码通信接口等核心概念,也包含Fabric网络设计、nodejs链码与应用开发的操作实践,是Nodejs工程师学习Fabric区块链开发的最佳选择。

  • Hyperledger Fabric java 区块链开发详解,课程面向初学者,内容即包含Hyperledger Fabric的身份证书与MSP服务、权限策略、通道配置与启动、链码通信接口等核心概念,也包含Fabric网络设计、java链码与应用开发的操作实践,是java工程师学习Fabric区块链开发的最佳选择。

  • tendermint区块链开发详解,本课程适合希望使用tendermint进行区块链开发的工程师,课程内容即包括tendermint应用开发模型中的核心概念,例如ABCI接口、默克尔树、多版本状态库等,也包括代币发行等丰富的实操代码,是go语言工程师快速入门区块链开发的最佳选择。

看完上述内容,你们对Linux中怎么安装BTCPayServer有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

开发 内容 区块 课程 交易 服务 文件 以太 应用 工程 工程师 教程 钱包 代码 核心 概念 证书 管理 合约 服务器 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技有限公司 科技金融是不是互联网金融 互联网科技公司税收优惠 疫情对互联网科技公司影响 腾讯科技 互联网女皇 科技创新互联网企业 深圳期待互联网科技 佰商互联网科技有限公司 互联网公司会议桌创意科技软装饰 青海省互联网新科技 济南和联互联网科技有限公司 农村开互联网科技讲堂 现代科技和互联网有关系吗 互联网科技项目计划书材料类 苏州五指互联网络科技有限 想开互联网科技公司怎么样 互联网科技和法律行业 广州燕处互联网科技有限公司 陕西九四连强互联网科技有限公司 张家口科技产业互联网平台 互联网科技图片 互联网科技官网 科技企业和互联网企业 北京互联网科技 深圳卡尔迅互联网科技有限公司怎么样 成都玖崟互联网科技有限公司乐商圈怎么样 成都互联网科技公司100强 阿大互联网科技有限公司 互联网科技快讯热点 云南互联网科技学费
0