Running a Snowflake on Debian 11

Running a Snowflake

1. Install golang

bash 复制代码
wget https://go.dev/dl/go1.21.4.linux-amd64.tar.gz
sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.21.4.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc
go version
bash 复制代码
ed2k://|file|go1.21.4.linux-amd64.tar.gz|66615271|E68373CE54C547E2D9BEF41297231176|/ 
  1. Install Snowflake
bash 复制代码
git clone https://git.torproject.org/pluggable-transports/snowflake.git
git branch -a
git checkout remotes/origin/renovate/github.com-aws-aws-sdk-go-v2-config-1.x
cd snowflake/proxy
go build
  1. Run

./proxy --verbose

You should see output indicating that the pr0xy is running and communicating with the broker.

  1. create a systemd service.

sudo vim /etc/systemd/system/snowflake-proxy.service

bash 复制代码
[Unit]
Description=Snowflake Network
After=network.target

[Service]
ExecStart=/home/linuxuser/snowflake/proxy/proxy
Restart=always
User=linuxuser
WorkingDirectory=/home/linuxuser/snowflake/proxy

[Install]
WantedBy=multi-user.target

sudo systemctl daemon-reload

sudo systemctl enable snowflake-proxy

sudo systemctl start snowflake-proxy

sudo systemctl status snowflake-proxy

  1. Set firewall
bash 复制代码
sudo ufw allow 3478/udp
sudo ufw allow 443/udp
sudo ufw allow 10000:60000/udp
sudo ufw reload
bash 复制代码
sudo iptables -I INPUT 7 -p udp --dport 10000:65535 -j ACCEPT
sudo iptables -I OUTPUT 10 -p udp --sport 10000:65535-j ACCEPT
sudo /sbin/iptables -L OUTPUT -v --line-numbers
sudo /sbin/iptables -L INPUT -v --line-numbers
sudo apt-get install netfilter-persistent
sudo netfilter-persistent save
# sudo iptables-save | sudo tee /etc/iptables/rules.v4
  1. Verify

journalctl -u snowflake-proxy -f

curl -4 ifconfig.me

webrtc test page

sudo iftop -i enp1s0 -P

  1. Troubleshooting
  • Verify the process is running (ps aux | grep proxy)
  • Check logs for errors (journalctl -u snowflake-proxy)
  • Run it manually for debugging (./proxy -verbose)
  • Confirm UDP port binding (ss -lunp | grep proxy)
  • Allow UDP traffic through firewall
  • Try running it with -relay to see the assigned port

$ netstat -tulnp

an entry looked like:

udp 0 0 0.0.0.0:41730 0.0.0.0:* 50767/proxy

"Config Bridge" -> "snowflake" -> "Provide a Bridge I know"

snowflake x.x.x.x:41730

x.x.x.x is your VPS IP address

$ sudo iftop -i enp1s0 -P # Adjust "enp1s0" based on your network interface

sudo iptables -t nat -L PREROUTING --line-numbers -v -n

sudo iptables -A OUTPUT -p udp --sport 34672 -j ACCEPT

sudo iptables -A INPUT -p udp --dport 34672 -j ACCEPT

sudo iptables -A OUTPUT -p tcp --sport 34662 -j ACCEPT

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

sudo /sbin/iptables -L OUTPUT -v --line-numbers

sudo /sbin/iptables -L INPUT -v --line-numbers

sudo apt-get install netfilter-persistent

sudo netfilter-persistent save

相关推荐
Wy_编程13 分钟前
Linux-文本搜索工具grep
linux·运维·服务器
qq9989914 分钟前
AAA服务器技术
运维·服务器
xujiangyan_16 分钟前
linux的sysctl系统以及systemd系统。
linux·服务器·网络
Lovyk19 分钟前
Linux Shell 常用操作与脚本示例详解
linux·运维·服务器
iCan_qi1 小时前
【Mac】【Minecraft】关于如何在Mac上搭建基岩版MC服务器的方法
运维·服务器·macos·minecraft
xixingzhe24 小时前
多人同时导出 Excel 导致内存溢出
服务器·设计
云手机掌柜4 小时前
Tumblr长文运营:亚矩阵云手机助力多账号轮询与关键词布局系统
大数据·服务器·tcp/ip·矩阵·流量运营·虚幻·云手机
yuanpan4 小时前
ubuntu系统上的conda虚拟环境导出方便下次安装
linux·ubuntu·conda
云边云科技5 小时前
零售行业新店网络零接触部署场景下,如何选择SDWAN
运维·服务器·网络·人工智能·安全·边缘计算·零售
AOwhisky5 小时前
Linux 文本处理三剑客:awk、grep、sed 完全指南
linux·运维·服务器·网络·云计算·运维开发