如何用树莓派(Raspberry Pi)搭建Socks5代理服务器——danted!让你可以利用家中闲置宽带扩展ip 适合多开搬砖等多种玩法,当然闲置老款电脑也可以替代树莓派。

首先,但凡有IP需求的成年人父母在家或者其他亲属长辈家中都必备安装了宽带上网,这已经是当下时代家家户户必备条件了。这篇文章就是利用父母亲属家的宽带作为媒介,利用树莓派作为代理服务器实现免费代理ip

小编是树莓派4b,理论上是所有版本型号的树莓派都可以尝试,树莓派zero貌似最低50多,电源是5v2a左右的具体视硬件版本,但耗电量也就是一部手机充电那样,真的是很省。如果说你不想购买硬件设备,也可以利用家中的老式台式机笔记本均可以。如果动手能力强也可以尝试香橙派等这些国产山寨机,都是可以的。

如果你有ip代理需求,且希望低成本且安全稳定的方案,那么废话不多说,开启我们的搭建教程:

树莓派系统选择 Raspbian Linux 操作系统(一般推荐选择稳定版,不要选择最新版,不推荐64位操作系统,因为镜像源不全。Ubuntu for Arm等其它系统也是可以的,就是需要变通一下命令!)

首先修改国内镜像源并更新,具体方法百度一下,

安装必备软件 输入以下指令:

1

sudo apt install dante-server

备份dante-server默认的配置文件(好的操作习惯方便改错后进行恢复):

1

sudo cp /etc/danted.conf /etc/danted.conf.bak

编辑配置文件小编习惯用nano,当然也可以使用vi或者vim:

1

sudo nano /etc/danted.conf

配置匿名服务器可以直接复制以下内容替换(也可以用“#”注释掉之前的设置):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

logoutput: /var/log/danted.log
internal: 此处填写你本地的IP或者网卡接口名 port = 1080
external: 此处填写你本地的IP或者网卡接口名
method: username none
user.privileged: proxy
user.notprivileged: nobody
user.libwrap: nobody
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect
}
pass {
from: 0.0.0.0/0 to: 0.0.0.0/0 port gt 1023
command: bind
log: connect disconnect
}
pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
command: connect udpassociate
log: connect disconnect
}
block {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect error
}logoutput: /var/log/danted.log
internal: 此处填写你本地的IP或者网卡接口名 port = 1080
external: 此处填写你本地的IP或者网卡接口名
method: username none
user.privileged: proxy
user.notprivileged: nobody
user.libwrap: nobody
client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect disconnect
}
pass {
from: 0.0.0.0/0 to: 0.0.0.0/0 port gt 1023
command: bind
log: connect disconnect
}
pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
command: connect udpassociate
log: connect disconnect
}
block {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect error
}

按Ctrl+O,回车保存,按Ctrl+X退出(vi编辑按ESC 输入:wq!回车即可)

配置安全认证,请修改method: username none 为method: username,或者method: pam,并修改user.notprivileged: nobody为user.notprivileged: 用户名。

username方式认证可以通过下面两条指令添加用户并为该用户指定密码。

1
2

useradd 用户名
paddwd 用户名

最后输入指令启动服务

1

sudo systemctl start danted

如果是树莓派用户启动danted服务时会报错:

Job for danted.service failed because the control process exited with error code.
See "systemctl status danted.service" and "journalctl -xe" for details.

这里是因为danted会读取64位的库,而树莓派目前稳定运行的是32位,虽说有64位系统,但文章先头有讲到目前64位有很多不兼容的地方,当然32位下依然有解决方案:编辑danted.service服

1

sudo nano /lib/systemd/system/danted.service

如下图 将第19行ReadOnlyDirectories中的\lib64删除掉:

Ctrl+O,Ctrl+X保存后输入以下指令重载服务配置并启动

1
2

sudo systemctl daemon-reload
sudo systemctl start danted

至此,免费ip代理服务器设置并启动成功了,把它连接好网线,并打开路由器或者光猫设置一下端口映射(前提是宽带有公网ip)映射端口1080(默认端口,如果想更换其他端口可以在上面的配置文档中进行修改),此时可以打开代理软件输入ip和端口及用户名密码尝试一下是否正常。

如果你有扩展ip的需求,又觉得单拉一根网线太破费的话,虽然可以考虑购买代理,但购买的ip大多也是共享ip且数据传送都承载在他人的服务器中显得格外不安全。于是小编想到了可以有效利用身边资源的方法扩展免费代理ip,本方法稳定且能保证数据安全。

注意事项

如何设置danted开机启动?

1

sudo systemctl enable danted

如何查看我的代理服务器是否搭建成功?

输入sudo systemctl status danted 查看服务运行状态,如果能看到绿色的runing字眼表示服务搭建成功且运行良好,如果是dead状态,那么问题出在你的配置文件,请重新检查你的ip或者网卡名是否正确。记住,修改配置文件后要输入sudo systemctl restart danted 命令进行danted服务重启方能生效。

扩展阅读-配置参数讲解

logoutput 关键字
定义了日志的输出位置,可以是syslog[/facility], stdout, stderr,一个指定文件,或者上述的组合。

internal关键字
定义了接受用户连接的IP地址,也可以写接口名称,如eth0

external关键字
定义了向外访问的IP地址,也可以写接口名称,如果有多个地址可以写多个。

method关键字
控制用户认证的方法,可以是以下之一或组合。
none 不需要认证
username 用户名密码
gssapi kerberos认证
rfc931 需要用户主机提供一个rfc931 reply,这个reply必须匹配一个/etc/passwd中的用户名
pam 通过PAM方式认证
badauth 通过BSD认证系统

user.privileged关键字
如果需要读取sockd.conf,写入sockd.pid等文件,或使用密码认证等需要特权的操作,则最好将此值设为root,如果不需要特权操作,则可以设成user.unprivileged相同的用户即可。

user.unprivileged关键字
用于运行dante进程的用户名

pass/block
定义rules,放行或者阻断。在dante的配置中,有两个层面的rules,一个是”client-rules”,另一个是”socks-rules”。
“client-rules”和”socks-rules”都由pass和block关键字组成,区别在于client-rules带有”client”前缀。
“client-rules”会首先被检查,用来判别用户是否可以与sockd通讯,这些规则工作在TCP层。
“socks-rules”是在通过client-rules判定,确认用户可以与sockd通讯以后,用来判别用户发送的连接的具体请求内容,并根据这些内容判定通过还是拒绝。
“client-rules”和”socks-rules”都遵循”first match is best match”原则,即如果有多条规则匹配,则第一个匹配指定client或socket的规则会被执行。

在以上两种rules中,针对IP地址这个值,还有一套可选的关键字,其中client-rules中的可选关键字是socks-rules中的一个子集。
对于每条规则,规则中所有的条件类关键字都会被检查 ,如果匹配用户请求,则所有的动作都会被执行。

IP地址中可选关键字主要包含两类:

条件类:
to
from
port
user
group
method
protocol
proxyprotocol
clientcompatibility
command

动作类:
bandwidth
libwrap
log
maxsessions
redirect
timeout.connect
timeout.negotiate
timeout.io
timeout.tcp_fin_wait
udp.portrange

原文链接:http://www.sooebuy.com/moving_bricks/69/转载请注明出处

树莓派4b搭建danted socks5 代理服务器 利用闲置宽带扩展搬砖IP相关推荐

  1. 利用闲置的树莓派4B搭建一个NAS(二)

    瞎折腾系列之利用闲置的树莓派搭建一个NAS,本文介绍安装好OpenMediaVault后进行基础配置,成功搭建NAS使用,后续关于OMV的配置和使用,以及如何最简单的进行内网穿透请关注后续博文! 利用 ...

  2. 利用闲置的树莓派4B搭建一个NAS(一)

    瞎折腾系列之利用闲置的树莓派搭建一个NAS,本文介绍树莓派系统的安装以及在树莓派上安装OpenMediaVault,后续关于OMV的配置和使用,以及如何最简单的进行内网穿透请关注后续博文! 利用闲置的 ...

  3. 基于树莓派4B搭建64位树莓派系统

    一.准备环境 1. 硬件环境 电脑一台(本人用笔记本,WIN7系统) TF卡一张(存储空间32GB以上)和读卡器 树莓派4B 2. 软件环境 系统烧入软件:balenaEtcher ,其实树莓派也有自 ...

  4. 树莓派3 搭建bt下载机---利用 aria2

    树莓派3 搭建bt下载机---利用 aria2 参考网址:https://www.slll.info/archives/1747.html http://www.jianshu.com/p/1290f ...

  5. 树莓派4b乌班图服务器系统,使用树莓派4B搭建NAS(一):基于Ubuntu Server 20.04 LTS...

    使用树莓派4B搭建NAS(一):基于Ubuntu Server 20.04 LTS 2020-06-14 13:27:00 59点赞 384收藏 40评论 创作立场声明:预告:下期介绍如何使用树莓派4 ...

  6. 树莓派4b搭建个人云_用树莓派搭建私人简易网盘 2/5 树莓派4B初始设置

    用树莓派搭建私人简易网盘 2/5 树莓派4B初始设置 2020-10-22 23:10:15 17点赞 57收藏 16评论 小编注:此篇文章来自即可瓜分10万金币,周边好礼达标就有,邀新任务奖励无上限 ...

  7. 用树莓派4b搭建Terraria服务器

    硬件信息 树莓派4b 8g 服务器版本 ┌──(root

  8. 树莓派4B搭建homeassistant 物联网平台

    1.环境 1.树莓派4B 2.树莓派系统版本: 3.home assistant插件 2.安装过程 2.1 树莓派系统制作 2.1.1树莓派系统下载 树莓派官网: https://www.raspbe ...

  9. 树莓派3 搭建bt下载机---利用 transmission-daemon

    树莓派3 搭建bt下载机---transmission-daemon 1.参考网址:http://www.jianshu.com/p/9dac4772cc72 2.补充 1)上面贴的网址已经写了绝大部 ...

最新文章

  1. node13---node使用mongodb
  2. [hdu6434]Problem I. Count
  3. mvn如何执行java代码
  4. php js实现异步图片上传,使用php+js异步上传图片
  5. Android ListView常用用法
  6. linux cpuspeed irqbalance 进程 cpu占用过高
  7. 剑指offer--51.表示数值的字符串
  8. hadoop集群中的日志文件
  9. 2058. 找出临界点之间的最小和最大距离
  10. MySQL 中日志的面试题总结
  11. 程序员在火车站候车室写代码画面曝光,网友:程序员的悲哀
  12. isdigit函数python_Python判断字符串是否为数字的方法isdecimal 、isdigit、isnumeric及坑...
  13. 使用SQL生成SQL语句时单引号的转义处理之q'{}'方法
  14. Keil使用命令行附加预定义宏编译
  15. 啊哈C语言 第1章 编程改变思维(第0讲)
  16. 计算机考研各科时间安排,计算机考研专业课复习全程的时间安排
  17. 虚拟机的服务器显示全屏,虚拟机怎么实现全屏显示
  18. ubuntu 中 vi 编辑文件上下左右删除键毫无作用肿么办!(上上下下左右左右BABA)
  19. 冬天 计算机无法启动不了怎么办,每次到冬天电脑就开不了
  20. 十二黄金圣斗士-合辑-修复版-3D打印图纸

热门文章

  1. 【云星数据---Apache Flink实战系列(精品版)】:Apache Flink批处理API详解与编程实战025--DateSet实用API详解025
  2. CMU AI PhD 第一年总结
  3. 输入日期查星座 php,php根据日期显示所在星座的方法,php日期所在星座_PHP教程...
  4. 新上线的材料计算超算云平台Mcloud V2.0版本推出全新功能——web端工作流拖拽提交作业+便捷web端建模
  5. AsLine v4.0正式发布-CAD地形图切剖面辅助插件
  6. 编程开发常用的英语单词
  7. 开发常用英语单词表格
  8. 阿里云与海底捞合作QA
  9. 服务器显示器如何更换,笔记本怎么换显示器_笔记本换显示器教程-win7之家
  10. 【渝粤教育】电大中专Office办公软件 (2)_1作业 题库