-
Linux ls 命令竟然還有這般武藝
Linux ls 命令竟然還有這般武藝!ls命令有多種替代方法,我們今后也將介紹其中的一些替代方法。
-
NAT 穿透是如何工作的:技術(shù)原理及企業(yè)級實踐
譯者序 本文翻譯自 2020 年的一篇英文博客:How NAT traversal works。 設(shè)想這樣一個問題:在北京和上海各有一臺局域網(wǎng)的機器(例如一臺是家里的臺式機,一 臺是連接到星巴克 WiFi 的筆記本),二者都是私網(wǎng) IP 地址,但可以訪問公網(wǎng),?如何讓這兩臺機器通信呢? 既然二者都能訪問公網(wǎng),那最簡單的方式當然是在公網(wǎng)上架設(shè)一個中繼服務(wù)器:兩臺機器分別連接到中繼服務(wù),后者完成雙向轉(zhuǎn)發(fā)。這種方式顯然有很大的性能開銷,而 且中繼服務(wù)器很容易成為瓶頸。 有沒有辦法不用中繼,讓兩臺機器直…
-
正則表達式也會導(dǎo)致拒絕服務(wù)?探討 ReDos(可能會中招哦)
介紹 當您想到拒絕服務(wù)攻擊時,您會想到什么?可能是一大群機器人試圖訪問 Web 服務(wù)器的資源以使其癱瘓。好吧,這肯定是導(dǎo)致拒絕服務(wù)攻擊的一種方式。但是,還有一種您可能沒有聽說過的方式。它被稱為?ReDoS,是由正則表達式引起的。 正則表達式?但這怎么可能呢?那不是通過使用過濾器來匹配字符串、將字符串列入白名單和黑名單,從而使我們的工作更輕松嗎?是的,但是攻擊者也可以利用它來使應(yīng)用程序(服務(wù)器)屈服。讓我們了解如何! 正則表達式是什么? 簡而言之,正則表達式是一種用于匹配(編程語言中)字符串的模式…
-
find 命令的 7 種用法
可以很肯定地說,find?命令是 Linux 后臺開發(fā)人員必須熟知的操作之一,除非您使用的是 Windows Server。 對于技術(shù)面試,它也是一個熱門話題。讓我們看一道真題: 如果你的 Linux 服務(wù)器上有一個名為?logs?的目錄,如何刪除該目錄下最后一次訪問時間超過一年的日志文件呢??? 這種情況很常見,但令人驚訝的是,并非每個開發(fā)人員都能在面試中清楚地寫出這個命令。 答案:首先我們需要使用?cd?命令進入對應(yīng)的目錄,然后,命令如下: 如果你還沒有完全理解上面的命令,完全不用擔心。本文將…
-
實用正則表達式快速參考
檢查數(shù)字 數(shù)字:^[0-9]*$ n 位數(shù):^\d{n}$ 至少 n 位數(shù)字:^\d{n,}$ m~n 位數(shù)字:^\d{m,n}$ 以零和非零開頭的數(shù)字:^(0|[1-9][0-9]*)$ 以非零開頭且最多兩位小數(shù)的數(shù)字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 帶 1-2 位小數(shù)的正數(shù)或負數(shù):^(\-)?\d+(\.\d{1,2})?$ 正數(shù)、負數(shù)和小數(shù):^(\-|\+)?\d+(\.\d+)?$ 非零正整數(shù):^[1-9]\d*$ or ^([1-9][0-9]*){1,3…
-
關(guān)于 Linux Bash Shell 中變量的 5 個易錯點
Linux 中的 Bash 腳本語言支持對變量的操作。但是,如果您從事過其他流行的編程語言開發(fā),那么使用 Bash 處理變量會很容易出錯。因為它的語法與其他語法不同(甚至對某些開發(fā)人員來說有點奇怪)。 這篇文章會根據(jù)我的經(jīng)驗給你5個友情提示。閱讀后,它可以幫助您避免不必要的錯誤。 0. 等號周圍沒有空格 對于許多語言,例如 Python,在等號周圍添加空格是一個好習慣,因為它可以提高代碼的可讀性。 但是在 Bash 中,你不應(yīng)該在定義變量時添加額外的空格。 如果我聲明一個變量?name,如下: …
-
探討 DNS 解析
DNS 服務(wù)器 在現(xiàn)實世界中,當您進行閱覽新聞、在線下單、下載文件或觀看直播時,您需要通過訪問域名來訪問目標網(wǎng)站,例如 youtube.com、google.com 等。您只需記住這些網(wǎng)站的名稱,而非它們的 IP 地址,因為與網(wǎng)站名稱相比,IP 地址是很難記住的。因此,您需要一個作為 DNS 服務(wù)器的網(wǎng)站/域名地址本。 DNS 在日常生活中非常重要。每個在線的人都需要訪問它,但同時,這對它來說也是一個非常大的挑戰(zhàn)。如果 DNS 服務(wù)器出現(xiàn)故障,整個 Internet 網(wǎng)絡(luò)都將關(guān)閉。 另外,上網(wǎng)的…
-
如何在 CentOS 8 上使用 FirewallD 設(shè)置防火墻?
我是一個 CentOS Enterprise Linux 8 系統(tǒng)管理員。如何在 CentOS8 上使用 FirwallD 設(shè)置防火墻? 簡介 一個 Linux 防火墻可用于保護您的工作站或服務(wù)器免受不需要的流量干擾。您可以設(shè)置規(guī)則來阻止或允許流量通過。CentOS 8 帶有一個動態(tài)的、可定制的基于主機的防火墻和一個 D-Bus 接口。您可以添加、刪除或更新防火墻的規(guī)則,而無需重新啟動防火墻守護程序或服務(wù)。firewall-cmd?充當著?nftables?的前端。在 CentOS 8 中,nf…
-
怎樣才能讓 Linux 文檔的顏色高亮?
您可以在 Linux 中用顏色顯示文件中的信息頁面。info?命令在 Linux 或 Unix 下用于閱讀多頁文檔,并也可作為命令行界面上的工作幫助查看器。在服務(wù)器上沒有可用的 GUI 時,這是很有用的。info?命令處理信息文件。所有信息文件都是 Texinfo 格式。而?pinfo?是一個鮮為人知的工具,它可以用顏色顯示信息頁面。 我們可以在 Linux 和類 Unix 系統(tǒng)(如 FreeBSD 或 macOS)上安裝?pinfo。 安裝 pinfo 在?Debian/Ubuntu Linu…
-
Linux CPU 上下文切換的故障排查
在我的上一篇文章:《探討 Linux CPU 的上下文切換》中,我談到了 CPU 上下文切換的工作原理。快速回顧一下,CPU 上下文切換是保證 Linux 系統(tǒng)正常運行的核心功能。可分為進程上下文切換、線程上下文切換和中斷上下文切換。 在本文中,我將進一步討論如何分析 CPU 上下文切換問題。 檢查 CPU 的上下文切換 我們知道,過多的上下文切換會消耗 CPU 的時間來保存和恢復(fù)寄存器、程序計數(shù)器、內(nèi)核棧和虛擬內(nèi)存等數(shù)據(jù),從而導(dǎo)致系統(tǒng)性能顯著下降。 既然上下文切換對系統(tǒng)性能的影響如此之大,那么…