0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

提高基于Linux的網(wǎng)絡(luò)連接系統(tǒng)的安全性

星星科技指導(dǎo)員 ? 來源:嵌入式計算設(shè)計 ? 作者:Kirill Marinushkin ? 2022-10-20 10:20 ? 次閱讀

嵌入式系統(tǒng)通過互聯(lián)網(wǎng)或本地網(wǎng)絡(luò)訪問設(shè)備的能力促進了廣泛的便捷交互。物聯(lián)網(wǎng)IoT) 的發(fā)展意味著嵌入式網(wǎng)絡(luò)的快速增長。對于這些應(yīng)用程序,網(wǎng)絡(luò)安全已成為一個大問題。嵌入式系統(tǒng)的資源過于有限,很難提供針對網(wǎng)絡(luò)攻擊的可靠保護。具有 Linux 的高性能設(shè)備可能具有安全網(wǎng)絡(luò)訪問的優(yōu)勢。

腳本和技術(shù)可以提高這些基于 Linux 的設(shè)備的網(wǎng)絡(luò)訪問安全級別。目標是將設(shè)備作為服務(wù)器進行遠程控制和管理。這可以在兩個級別進行:用于安全遠程外殼訪問和 SFTP 文件傳輸?shù)?SSH 級別,以及 IP 級別保護。

固態(tài)混合軟件級別安全性

通過 SSH 外殼和 SFTP 進行遠程訪問是使用 Linux 控制目標嵌入式系統(tǒng)的最大機會。啟用此功能是管理設(shè)備的便捷方式。SSH 協(xié)議執(zhí)行高級別的安全性和加密。與 SSH 外殼和 SFTP 服務(wù)器服務(wù)關(guān)聯(lián)的“sshd”實用程序有幾種可能的配置,以提高 SSH 級別的安全性。

在嵌入式系統(tǒng)的流行Linux發(fā)行版(如?;虬⒗觏椖浚┲校皝G熊”實用程序是默認的SSH服務(wù)器。不幸的是,它提供了一組有限的配置選項。在此實用程序中禁用了重要的配置可能性,例如用戶的權(quán)限。因此,如果目標設(shè)備將具有遠程訪問權(quán)限,則安裝“ OpenSSH”服務(wù)器將是一個更好的主意。要更改 SSH 服務(wù)器,請刪除丟熊啟動腳本(或移動它,如下面的示例所示)并安裝 OpenSSH 軟件包:

mv /etc/init.d/dropbear /dropbear_script_backup
opkg install openssh

使用非標準 SSH 端口

使用非標準 SSH 端口是防止“巧合”發(fā)現(xiàn)的最簡單方法。它可能有助于避免通過互聯(lián)網(wǎng)或 LAN 進行的許多攻擊,這些攻擊基于掃描最常用的 TCP 端口以查找網(wǎng)絡(luò)中不同 IP 地址上的指定服務(wù)。降低 SSH 協(xié)議此風(fēng)險的簡單方法是將標準端口 22 更改為非標準端口。此選項適用于任何 SSH 服務(wù)器。唯一需要注意的是需要在客戶端的防火墻上打開指定的端口。

SSH 端口號在“/等/init.d/sshd_config”文件中配置,如下所示:

Port 1907

配置 SSH 訪問的用戶權(quán)限

SSH 服務(wù)器選項包括許多限制用戶權(quán)限的方法。對于安全外殼和 SFTP 服務(wù),選項“允許根登錄”、“允許用戶”或“拒絕用戶”限制了能夠通過 SSH 連接到設(shè)備的登錄名。對于 SFTP,可以使用更多參數(shù)來更改根目錄路徑。此方法對于保護包含關(guān)鍵和機密數(shù)據(jù)的系統(tǒng)部件非常重要。此選項允許已配置的用戶僅在其目錄和子目錄中操作,因此您可以將其保留在其“沙盒”中。選項“子系統(tǒng) SFTP 內(nèi)部 SFTP”與“Chroot 目錄”相結(jié)合,允許更改指定用戶的根目錄。所有已配置登錄名的“Chroot 目錄”部分應(yīng)放在配置文件的末尾。為不同用戶設(shè)置目錄時,該目錄的所有者應(yīng)為 root 用戶。

要配置用戶的 SSH 權(quán)限,請編輯文件 /etc/init.d/sshd_config,如以下示例所示:

<...>
#list of allowed users:
PermitRootLogin yes
AllowUsers root user1 user2 user3
Subsystem SFTP internal-SFTP
#changing the root directory for user1 and user2:
Match user user1 user2
ChrootDirectory /dir1
ForceCommand internal-SFTP
#changing the root directory for user3:
Match user user3
ChrootDirectory /dir2
ForceCommand internal-SFTP

通過 SSH 遠程訪問您的應(yīng)用程序

為了在嵌入式系統(tǒng)中對應(yīng)用程序執(zhí)行非標準用戶訪問,使用SSH協(xié)議作為網(wǎng)絡(luò)通信的安全層非常方便。

一種常見的方法是將服務(wù)作為偵聽指定 TCP 端口的服務(wù)器運行。要提供 SSH 連接,您可以使用“l(fā)ibssh” – 一個根據(jù) LGPL 許可的開源項目。該項目有幾個示例,包括 sshd 源代碼,它為構(gòu)建服務(wù)器應(yīng)用程序提供了良好的基礎(chǔ)。注意:此解決方案未連接到 OpenSSH 服務(wù)器,需要自己的端口號和用戶管理。

另一種選擇是為您的服務(wù)使用現(xiàn)有的正在運行的 OpenSSH 服務(wù)器。我們的想法是將 shell 實用程序替換為您自己的應(yīng)用程序,以供指定用戶使用。這一次,用戶將通過標準輸入/輸出接口(如終端)與遠程系統(tǒng)進行交互。此解決方案是使用您需要的確切功能組織安全遠程訪問的更有效方法。要為用戶替換 shell,請在“/etc/passwd”文件中編輯其參數(shù),方法是將最后一個選項替換為應(yīng)用程序的路徑:

user1::500:500:Linux User,,,:/home/user1:

IP 級保護

“Iptables”是一個功能強大的工具,用于在 IP 級別保護對目標 Linux 系統(tǒng)的遠程訪問。Iptables 允許系統(tǒng)獨立于應(yīng)用程序級網(wǎng)絡(luò)協(xié)議過濾流量。這是最通用的選項,幾乎適用于每個平臺。

在 Linux 內(nèi)核配置期間,應(yīng)打開對表的支持。請注意,默認情況下,一些必要的 iptables 選項(如“連接”或“connlimit”)可能會在內(nèi)核中關(guān)閉,因此請打開它們以使用更多 iptables 可能性。

在系統(tǒng)啟動時啟動表腳本

iptables 實用程序用作網(wǎng)絡(luò)流量篩選器。篩選器作為規(guī)則鏈執(zhí)行,這些規(guī)則鏈通過運行具有不同參數(shù)的“iptables”命令來應(yīng)用。這些規(guī)則在腳本文件中一起設(shè)置。要將 iptables 置于初始狀態(tài),請以以下示例規(guī)則開始腳本:

iptables -F	#flush all chains?iptables -X	#delete all chains
#accept network traffic by default:
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
#forbid ping:
iptables -A INPUT -p icmp -j DROP

要在系統(tǒng)啟動時啟用 iptable 保護,請將所需的規(guī)則寫入腳本文件并執(zhí)行:

sudo mv  /etc/init.d/?sudo chmod +x 
/etc/init.d/?sudo update-rc.d  defaults

防止暴力攻擊

使用 SSH 協(xié)議時,暴力破解是最大的安全問題。可以使用 iptables 設(shè)置一個簡單的防火墻來防止暴力攻擊。這個想法是阻止淹沒SSH端口的IP地址,并限制打開的最大連接數(shù)。下面的腳本用于此目的:

#create the chain to check the number of tries to connect the port:
iptables -N SSH_brute_check 
#if during last 300 seconds any IP address opens more than 20 new connections – block it
iptables -A SSH_brute_check -m conntrack --ctstate NEW -m recent --update --seconds 300 --hitcount 20 -j DROP
#else – allow and add to the checking chain
iptables -A SSH_brute_check -m recent --set -j ACCEPT
iptables -F INPUT #flush input chain
#allow established connections
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 
#send all tries to open new connections on port 22 to the checking chain
iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 22 -j SSH_brute_check

白名單/黑名單 IP 地址

如果客戶端的 IP 地址是靜態(tài)的,則執(zhí)行網(wǎng)絡(luò)安全的最佳方法是僅允許訪問某些 IP 地址。這意味著除了指定的用戶之外,其他用戶將無法遠程訪問目標嵌入式系統(tǒng)。這可以通過創(chuàng)建合法 IP 地址的白名單來完成。對于下面的示例腳本,允許的 IP 地址逐行寫入文件,如下所示:

192.168.0.15
192.168.0.100 
<...>

用于完成此操作的 iptables 腳本如下所述:

cat  | 
while read VAR; do
iptables -A INPUT -s $VAR -j ACCEPT
done

您可以使用相反的策略 - 通過將指定的IP地址添加到黑名單中來禁止它們。下面執(zhí)行阻止黑名單中 IP 地址的示例:

cat  | 
while read VAR; do
iptables -A INPUT -s $VAR -j DROP
done

關(guān)閉 IPv6 支持

所描述的服務(wù)和方法使用 IPv4 協(xié)議。IPv6 協(xié)議的安全配置將被忽略,這使得保持啟用狀態(tài)不安全。如果在內(nèi)核中啟用了 IPv6 支持,則它應(yīng)該具有額外的保護?;蛘?,如果您不需要它,則可以通過在 /etc/sysctl.conf 文件中添加以下行來關(guān)閉它:

net.ipv6.conf.eth0.disable_ipv6 = 1
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5054

    文章

    18917

    瀏覽量

    300912
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2899

    文章

    43822

    瀏覽量

    369277
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11181

    瀏覽量

    208505
收藏 人收藏

    評論

    相關(guān)推薦

    住宅動態(tài)IP:網(wǎng)絡(luò)連接的靈活新選擇

    住宅動態(tài)IP作為一種新興的網(wǎng)絡(luò)配置方式,正逐漸成為網(wǎng)絡(luò)連接的一個靈活新選擇。
    的頭像 發(fā)表于 10-21 07:53 ?64次閱讀

    在跨境電商中,如何確保網(wǎng)絡(luò)節(jié)點的安全性和合規(guī)?

    在跨境電商中,確保網(wǎng)絡(luò)節(jié)點的安全性和合規(guī)是至關(guān)重要的。以下是一些關(guān)鍵措施: 1、數(shù)據(jù)保護:加強數(shù)據(jù)保護是提高安全性的重要方面。這包括確保所有敏感數(shù)據(jù)都通過加密傳輸,并在存儲時進行加密
    的頭像 發(fā)表于 09-25 13:45 ?199次閱讀

    工業(yè)交換機如何增強網(wǎng)絡(luò)連接的可靠

    在現(xiàn)代工業(yè)環(huán)境中,網(wǎng)絡(luò)連接的可靠至關(guān)重要,尤其是在需要實時數(shù)據(jù)傳輸和控制的應(yīng)用場景中。工業(yè)交換機作為網(wǎng)絡(luò)設(shè)備,扮演著關(guān)鍵的角色。它們通過多種技術(shù)和設(shè)計理念來增強網(wǎng)絡(luò)的穩(wěn)定性和可靠
    的頭像 發(fā)表于 09-12 11:06 ?217次閱讀
    工業(yè)交換機如何增強<b class='flag-5'>網(wǎng)絡(luò)連接</b>的可靠<b class='flag-5'>性</b>

    請問DM平臺訪問安全性如何控制?

    DM平臺訪問安全性如何控制?
    發(fā)表于 07-25 06:10

    工業(yè)控制系統(tǒng)安全性分析與對策

    隨著工業(yè)4.0和智能制造的快速發(fā)展,工業(yè)控制系統(tǒng)(ICS)已成為現(xiàn)代工業(yè)生產(chǎn)的核心。然而,隨著信息化、網(wǎng)絡(luò)化程度的提高,工業(yè)控制系統(tǒng)面臨著越來越多的
    的頭像 發(fā)表于 06-28 18:07 ?1046次閱讀

    美國硅谷云服務(wù)器的網(wǎng)絡(luò)連接速度如何?

     美國硅谷云服務(wù)器的網(wǎng)絡(luò)連接速度如何?Rak部落小編為您整理發(fā)布美國硅谷云服務(wù)器的網(wǎng)絡(luò)連接速度。
    的頭像 發(fā)表于 04-22 09:56 ?339次閱讀

    穩(wěn)定可靠的網(wǎng)絡(luò)連接解決方案

    工業(yè)路由器是專為工業(yè)應(yīng)用設(shè)計的網(wǎng)絡(luò)設(shè)備,具備高速數(shù)據(jù)傳輸、智能管理等特點,廣泛應(yīng)用于制造業(yè)、能源、物流等領(lǐng)域。其高穩(wěn)定性、高效數(shù)據(jù)傳輸、智能管理、兼容強和易于維護等優(yōu)勢使其成為穩(wěn)定可靠的網(wǎng)絡(luò)連接解決方案,推動工業(yè)數(shù)字化轉(zhuǎn)型。
    的頭像 發(fā)表于 04-07 18:20 ?1040次閱讀

    SDWAN技術(shù)是否會增加網(wǎng)絡(luò)安全風(fēng)險?SD-WAN如何確保網(wǎng)絡(luò)通信的安全性?

    網(wǎng)絡(luò)通信的安全性之前,我們需要理解SDWAN的基本原理以及它可能引起的安全問題。 SD-WAN(軟件定義廣域網(wǎng))技術(shù)是一種基于軟件的網(wǎng)絡(luò)解決方案,它使用虛擬化技術(shù)來集中管理和監(jiān)控多個廣
    的頭像 發(fā)表于 03-27 16:57 ?731次閱讀

    電流探頭測試小技巧:提高準確安全性

    電流探頭是一種常用的測試工具,用于測量電路中的電流。正確使用電流探頭可以提高測試的準確,并確保操作的安全性。本文將介紹一些電流探頭的測試小技巧,幫助您更好地使用電流探頭進行電流測量。 技巧一:正確
    的頭像 發(fā)表于 03-08 09:31 ?292次閱讀
    電流探頭測試小技巧:<b class='flag-5'>提高</b>準確<b class='flag-5'>性</b>和<b class='flag-5'>安全性</b>

    STM32cubeide 1.9網(wǎng)絡(luò)連接失敗的原因?

    如題STM32cubeide 1.9 網(wǎng)絡(luò)連接失敗 最早1.1開始 沒有這個問題 電腦重裝系統(tǒng)后 重新從官網(wǎng)下載1.9 安裝后無法聯(lián)網(wǎng)下載hal包,檢查網(wǎng)絡(luò)連接失敗。 在 network connections 我也不知知道怎么
    發(fā)表于 03-07 06:58

    如何解決Linux系統(tǒng)中的網(wǎng)絡(luò)連接問題?

    如何解決Linux系統(tǒng)中的網(wǎng)絡(luò)連接問題? Linux系統(tǒng)中的網(wǎng)絡(luò)連接問題是常見的技術(shù)難題之一,通
    的頭像 發(fā)表于 01-12 15:17 ?765次閱讀

    指定和使用 VFD 電纜以提高可靠性安全性并減少碳排放

    作者:Jeff Shepard 投稿人:DigiKey 北美編輯 變頻驅(qū)動器 (VFD) 和電機可以減少碳排放,提高各種系統(tǒng)的效率、可靠安全性,包括輸送機、泵、攪拌機、電梯、暖通/
    的頭像 發(fā)表于 01-01 15:03 ?743次閱讀
    指定和使用 VFD 電纜以<b class='flag-5'>提高可靠性</b>和<b class='flag-5'>安全性</b>并減少碳排放

    TogetherROS系統(tǒng)中如何配置網(wǎng)絡(luò)連接

    無論是旭日X3派,還是TogetherROS,在正式使用之前,都還需要進行一些必要的配置,完善必要的功能模塊,提供完整的算力支持,達到最佳狀態(tài)。 網(wǎng)絡(luò)連接 第一個配置,是無線網(wǎng)絡(luò)連接。 當(dāng)然,大家也
    的頭像 發(fā)表于 12-01 15:39 ?424次閱讀
    TogetherROS<b class='flag-5'>系統(tǒng)</b>中如何配置<b class='flag-5'>網(wǎng)絡(luò)連接</b>

    工業(yè)路由器-穩(wěn)定高效的網(wǎng)絡(luò)連接工具

    工業(yè)路由器-穩(wěn)定高效的網(wǎng)絡(luò)連接工具
    的頭像 發(fā)表于 11-16 11:21 ?458次閱讀

    求助,為什么說電氣隔離安全性比較高?

    為什么說電氣隔離安全性比較高?
    發(fā)表于 11-02 08:22