🌈個人主頁:聆風吟
🔥系列專欄:數據結構、Cpolar雜談
🔖少年有夢不應止于心動,更要付諸行動。
文章目錄
- 📋前言
- 一. 安裝sql server
- 二. 局域網測試連接
- 三. 安裝cpolar內網穿透
- 四. 將sqlserver映射到公網
- 五. 公網遠程連接
- 六.固定連接公網地址
- 七.使用固定公網地址連接
- 📝結語
📋前言
簡單幾步實現在Linux centos環境下安裝部署sql server數據庫,并結合cpolar內網穿透工具,創建安全隧道將其映射到公網上,獲取公網地址,實現在外異地遠程連接家里/公司的sqlserver數據庫,而無需公網IP,無需設置路由器,亦無需云服務器。
一. 安裝sql server
下載 SQL Server 2022 (16.x) Red Hat 存儲庫配置文件:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2022.repo
運行以下命令以安裝 SQL Server:
sudo yum install -y mssql-server
然后等待安裝完成
包安裝完成后,使用其完整路徑運行 mssql-conf setup
,按照提示設置 SA 密碼并選擇版本。
sudo /opt/mssql/bin/mssql-conf setup
前面三個版本是免費提供許可的:Evaluation、Developer 和 Express 版,我們選擇第二個作為測試使用
然后同意一下許可條款,輸入yes
選擇中文語言
然后設置管理員密碼,把密碼記住,不要忘了
然后安裝完成,會自動啟動
完成配置后,驗證服務是否正在運行:
systemctl status mssql-server
默認的 SQL Server 端口為1433,TCP協議。 如果為防火墻使用的是FirewallD
,則可以使用以下命令:
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
設置完重啟防火墻
sudo firewall-cmd --reload
此時,安裝完成了。
注意:如果需要使用命令行連接,在安裝sqlserver的時候就需要安裝sql server命令行工具,可以參考官方教程:https://learn.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat?view=sql-server-ver16
二. 局域網測試連接
由于我沒有安裝命令行工具,所以我們使用圖形化工具連接,這邊使用navicat
進行測試連接,輸入局域網ip地址,輸入用戶名sa,密碼上面設置的密碼,點擊測試連接出現連接成功
點擊數據庫,勾選默認的數據庫,
登陸后即可看到默認表信息
三. 安裝cpolar內網穿透
上面步驟里,我們在本地Linux安裝了sql server 數據庫并且局域網測試ok。
接下來我們安裝cpolar內網穿透工具,通過cpolar的tcp公網地址,我們可以很容易實現遠程訪問sql server,而無需自己注冊域名購買云服務器。cpolar它支持http/https/tcp/tls/ftp協議,使用不限制流量,支持永久免費使用。
cpolar官網:https://www.cpolar.com/
- 使用一鍵腳本安裝命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- token認證
登錄cpolar官網后臺,點擊左側的驗證,查看自己的認證token,之后將token貼在命令行里:
cpolar authtoken xxxxxxx
- 向系統添加服務
sudo systemctl enable cpolar
- 啟動cpolar服務
sudo systemctl start cpolar
四. 將sqlserver映射到公網
成功啟動cpolar服務后,我們在瀏覽器上訪問cpolar web UI管理界面:Linux局域網ip地址+9200端口
,使用cpolar郵箱賬號登錄(如果你還沒注冊賬號的話,在cpolar官網注冊一個)
登錄成功后,點擊左側儀表盤的隧道管理——創建隧道,創建一個tcp協議的隧道指向sql server的1433端口:
- 隧道名稱:可自定義,注意不要與已有的隧道名稱重復
- 協議:tcp
- 本地地址:1433
- 域名類型:免費選擇隨機域名
- 地區:選擇China VIP
點擊創建
然后打開在線隧道列表,查看并且復制tcp協議的公網地址。【注意無需復制tcp://
】
五. 公網遠程連接
打開navicat或者其他連接工具,輸入上面我們使用cpolar內網穿透工具所獲取的公網地址,以及sqlserver用戶名密碼,點擊測試連接,出現連接成功表示成功。
需要注意:公網地址中的冒號(
:
)需改為逗號(,
)
六.固定連接公網地址
由于以上步驟使用的是隨機臨時tcp端口地址,所生成的公網地址為隨機臨時地址,該公網地址24小時內會隨機變化。我們接下來為其配置固定的TCP端口地址,該地址不會變化,設置后將無需每天重復修改地址,同時提高帶寬速度。
配置固定tcp端口地址需要將cpolar升級到專業版套餐或以上。
- 保留一個固定tcp地址
登錄cpolar官網后臺,點擊左側的預留,找到保留的tcp地址,我們來為遠程sqlserver保留一個固定的tcp地址:
- 地區:選擇China vip
- 描述:即備注,可自定義
點擊保留
地址保留成功后,系統會生成相應的固定公網地址,將其復制下來
- 配置固定tcp地址
在瀏覽器上登錄cpolar web UI管理界面,Linux局域網ip地址+:9200端口
。
點擊左側儀表盤的隧道管理——隧道列表,找到我們上面創建的遠程sqlserver隧道,點擊右側的編輯
修改隧道信息,將保留成功的固定tcp地址配置到隧道中
- 端口類型:修改為固定tcp端口
- 預留的tcp地址:填寫官網保留成功的地址
點擊更新
隧道更新成功后,點擊左側儀表盤的狀態——在線隧道列表,可以看到公網地址已經更新成為了固定tcp地址。
七.使用固定公網地址連接
打開navicat連接工具,輸入官網保留的固定tcp地址,點擊測試連接,提示連接成功。
需要注意,公網地址后面端口的冒號(
:
)需改為逗號(,
)
現在這個公網地址不會再隨機變化了,只要保持隧道正常在線,我們在外就可以通過這個固定公網地址來遠程連接局域網的sqlserver數據庫。
📝結語
???? 今天的干貨分享到這里就結束啦!如果覺得文章還可以的話,希望能給個三連支持一下,聆風吟的主頁還有很多有趣的文章,歡迎小伙伴們前去點評,您的支持就是作者前進的最大動力!