介紹
使用樹莓派3B+搭建SMB服務器,並內網穿透映射到阿里雲服務器上。
工具:
1.樹莓派3B+。
2.樹莓派操作系統爲raspbian。建議不要在樹莓派安裝其他操作系統,會出現很多兼容問題。
3.阿里雲輕量應用服務器,root權限。
安裝Frp和smb服務啓動程序
frp下載地址
1.frp分爲服務端和客戶端,首先在阿里雲下載服務端。
wget https://github.com/fatedier/frp/releases/download/v0.31.1/frp_0.31.1_linux_amd64.tar.gz
解壓
tar -zxvf frp_0.31.1_linux_amd64.tar.gz
進入到剛解壓的目錄裏後,發現有兩種格式的文件,frps*
和frpc*
,分別表示服務端和客戶端,而云服務器作爲服務端,所以可以把客戶端的文件全部刪掉。rm -rf frpc*
2.配置服務端。配置文件爲frps.ini,將文件配置如下:
[root@iZ2zefujolo6rmdgx2ph6uZ frp]# cat frps.ini
[common]
#綁定的端口,此例面向樹莓派的端口
bind_port = 7000
#設置連接密鑰
token=××××××××××
#設置frp後臺端口
dashboard_port=8000
#設置後臺帳號和密碼
dashboard_user=admin
dashboard_pwd=××××××××××
設置完成後,要在阿里雲控制檯開啓相關的防火牆端口規則(其實就是ACL)。
開啓服務端:
[root@iZ2zefujolo6rmdgx2ph6uZ frp]# ./frps -c frps.ini
2020/01/23 20:47:22 [I] [service.go:152] frps tcp listen on 0.0.0.0:7000
2020/01/23 20:47:22 [I] [service.go:194] http service listen on 0.0.0.0:8090
2020/01/23 20:47:22 [I] [service.go:251] Dashboard listen on 0.0.0.0:8000
2020/01/23 20:47:22 [I] [root.go:205] start frps success
3.下載客戶端相關程序。
此處可根據自己板子的不同選擇32位還是64位,我選擇的是32位,64位的在紅框的下方。
下載和解壓操作同服務端。
4.安裝samba服務。
網上教程很多,此處不再說明
5.在windows電腦測試連接,成功。
通過公網IP訪問樹莓派SMB服務
1.上一步已經啓動了frp的服務端,現在開啓frp的客戶端。配置frpc.ini
[common]
server_addr = XXXXXXX
server_port = 7000
token=xxxxxxxxxxxx
[smb]
type = tcp
local_ip = 127.0.0.1
local_port = 445
remote_port = 40000
之後運行sudo ./frpc -c frpc.ini
不要忘了開啓阿里雲安全組相應的端口
注意:remote_port參數不能爲雲服務器的445,否則是訪問不到的,但換成高端口就可以訪問。猜想可能是永恆之藍後全公網封殺了445和139端口等。若有大佬成功映射到了雲服務器的445端口,請一定要私聊我或者在下面評論啊。
PS:這樣windows是無法直接訪問的,因爲windows默認訪問445端口,改起來也比較麻煩。如果真想共享文件,可以使用python3自帶的http.server。