慣性聚合 高效追蹤和閱讀你感興趣的部落格、新聞、科技資訊
閱讀原文 在慣性聚合中打開

推薦訂閱源

博客园 - 司徒正美
V
V2EX
T
Tailwind CSS Blog
有赞技术团队
有赞技术团队
aimingoo的专栏
aimingoo的专栏
Apple Machine Learning Research
Apple Machine Learning Research
IT之家
IT之家
Blog — PlanetScale
Blog — PlanetScale
A
About on SuperTechFans
月光博客
月光博客
T
The Blog of Author Tim Ferriss
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
V
Visual Studio Blog
WordPress大学
WordPress大学
酷 壳 – CoolShell
酷 壳 – CoolShell
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI

阮一峰的网络日志

科技爱好者周刊(第 396 期):互联网通信的替代方案 科技爱好者周刊(第 396 期):互联网通信的替代方案 - 阮一峰的网络日志 科技爱好者周刊(第 395 期):软件开发的第三种方式 科技爱好者周刊(第 395 期):软件开发的第三种方式 - 阮一峰的网络日志 科技爱好者周刊(第 393 期):脑腐状态 科技爱好者周刊(第 392 期):axios 投毒与好莱坞式骗术 科技爱好者周刊(第 391 期):AI 的贫富分化 科技爱好者周刊(第 390 期):没有语料,大模型就是智障 套壳中国大模型撑起500亿美元估值?扒一扒 Cursor 的"套壳"疑云 科技爱好者周刊(第 389 期):未来如何招聘程序员 科技爱好者周刊(第 388 期):测试是新的护城河 零安装的"云养虾":ArkClaw 使用指南 科技爱好者周刊(第 387 期):你是领先的 科技爱好者周刊(第 386 期):当外卖员接入 AI 字节全家桶 Seed 2.0 + TRAE 玩转 Skill 科技爱好者周刊(第 385 期):马斯克害怕中国车企吗? 智谱旗舰 GLM-5 实测:对比 Opus 4.6 和 GPT-5.3-Codex 科技爱好者周刊(第 384 期):为什么软件股下跌 科技爱好者周刊(第 383 期):你是第几级 AI 编程 Kimi 的一体化,Manus 的分层 科技爱好者周刊(第 382 期):独立软件的黄昏 AI native Workspace 也许是智能体的下一阶段 科技爱好者周刊(第 381 期):中国 AI 大模型领导者在想什么 科技爱好者周刊(第 380 期):为什么人们拥抱"不对称收益" 科技爱好者周刊(第 379 期):《硅谷钢铁侠》摘录 我如何用 AI 处理历史遗留代码:MiniMax M2.1 升级体验 科技爱好者周刊(第 378 期):预测是新的互联网热点 科技爱好者周刊(第 377 期):14万美元的贫困线 科技爱好者周刊(第 376 期):太空数据中心的争议 科技爱好者周刊(第 375 期):一扇门的 Bug 终于有人做了 Subagent,TRAE 国内版 SOLO 模式来了 科技爱好者周刊(第 374 期):6GHz 的问题 VS Code 使用国产大模型 MiniMax M2 教程 科技爱好者周刊(第 373 期):数据模型是新产品的核心 国产大模型接入 Claude Code 教程:以 Doubao-Seed-Code 为例 科技爱好者周刊(第 372 期):软件界面如何设计 大模型比拼:MiniMax M2 vs GLM 4.6 vs Claude Sonnet 4.5 科技爱好者周刊(第 371 期):一个乐观主义者的专访 科技爱好者周刊(第 370 期):正确的代码高亮 错误处理:异常好于状态码 科技爱好者周刊(第 369 期):Tim 与罗永浩的对谈 科技爱好者周刊(第 368 期):不要这样管理软件团队 一天之内,智谱和 Anthropic 都发了最强编程模型 科技爱好者周刊(第 367 期):Nano Banana 的几个妙用 科技爱好者周刊(第 366 期):旧金山疯狂的 AI 广告 科技爱好者周刊(第 365 期):流量变现正在崩塌 科技爱好者周刊(第 364 期):最难还原的魔方 科技爱好者周刊(第 363 期):最好懂的神经网络解释 科技爱好者周刊(第 362 期):GitHub 工程师谈系统设计 科技爱好者周刊(第 361 期):暗网 Tor 安全吗?
科技愛好者週刊(第 242 期):一次尷尬的服務器被黑
阮一峰 · 2023-02-17 · via 阮一峰的网络日志

這裡記錄每週值得分享的科技內容,週五發佈。

本雜誌開源,歡迎投稿。週刊另有《誰在招人》服務,發佈程序員招聘信息。合作推廣請郵件聯繫[email protected])。

封面圖

上圖是2022年世界旅行類攝影師比賽的獲獎者。Najin 是非洲中部僅存的兩頭白犀牛之一,已經33歲了,為了保護它不被偷獵者殺害,肯尼亞政府專門為它安排了守衛。他們形影不離,中午一起在非洲大草原上休息。(via

本週話題:一次尷尬的服務器被黑

本週一凌晨(2月13日),我的個人網站服務器被黑了。

由於入侵者沒有觸發報警機制,我也沒察覺。一覺醒過來,看到好多網友的郵件,讓我快去看看網站,訪問任何一個網頁,都會跳轉到 xxx 的外部網址,令人極度尷尬。

我查了一下服務器,發現果然如此。事態很嚴重,對方拿到了網頁目錄的寫入權限,將我的所有 HTML 網頁都刪除了原始內容,寫入了他的跳轉代碼window.onload="..."

但是,數據庫沒有遭到破壞,加上沒有 SSH 的異常登錄報警,因此我判斷,對方沒有拿到服務器的登錄權限,只是利用了 Web 服務的漏洞。

我的第一感覺不是恐慌,也不是憤怒,而是無奈。擔心已久的事情,終於發生了。

很多朋友知道,我的個人網站至少有10年沒有修改過樣式了。不是不想改,而是沒法改,或者說改起來很麻煩。

原因是我的後臺軟件採用了早期著名博客軟件 MovableType,它的歷史比 WordPress 還要悠久。後者已經是老古董了,你就知道它有多老了。當然,這說明我也老了,當年選擇它的時候,我還是學生。

MovableType 早就停止發展了,轉讓給了一個日本公司,所有用戶都要繳費,才能收到代碼補丁。我沒繳費,所以我的個人網站的後臺早就老化了。

軟件老化本身不是大問題,只要還能正常運行,並且你也不需要新功能,那麼就能平安無事地過下去。真正的問題是它的依賴都過時了。

它依賴的底層系統和組件,都嚴重過時。我試過把它遷移到新系統,結果各種報錯,不得不一直運行在很老的系統上。

我一直知道老系統不安全,但是又不敢升級。擔心的事情最終還是爆發了。

前兩年,我已經被攻擊過一次,當時心存僥倖,只做了一些服務器加固,還是沒升級,直到現在。

這次被攻擊,我就想如法炮製。網站有定期快照,被黑後,我回滾到最近一次快照,又改了一些服務器設置,星期一中午就把網站恢復上線了,心想最好這次也能矇混過關。

但是,對方大概一直在線盯著我,上線一小時之內,又被一模一樣地黑了。

這時,我知道大事不好,只能將網站再次下線。好在上次被攻擊時,我做過一個臨時公告頁面,這次還能用,把域名指向它即可。

此後整整一天,我一籌莫展,做好了最壞打算,個人網站可能要長時間下線。在此期間,只能通過臨時頁面發佈內容。

到了星期二下午,我越想越憋氣,最後還是不死心,一咬牙決定升級服務器,死馬當作活馬醫。

我一口氣把底層系統和依賴組件,都升級到了最近的版本,整整裝了一個多小時。這次很神奇,網站沒有奇怪的報錯,居然能正常運行。驚喜之餘,我就把網站恢復上線了,到目前為止都是正常的。

說實話,我不肯定漏洞已經被修復了。如果接下來,服務器再次被黑,我就沒轍了,只能長時間下線網站了,然後加快原本就打算今年要做的事情:自己重寫博客架構,改成徹底的靜態網站。

這次的教訓有很多,如果大家也想做一個獨立博客,我有兩點建議。

(1)不要自己管理服務器。 服務器管理是一個非常繁瑣的專門工種,如果不是專業的運維工程師,很難做好。退一步說,即使你擁有這方面的專業知識,也不值得把大量時間和精力投入在自己的博客服務器上。網絡世界是一個黑暗森林,到處都有人向你打冷槍,防不勝防,解決方法就下一條。

(2)使用專業的雲服務商。 現在大部分雲服務器商,都有靜態網站託管服務,把靜態網頁託管在它們那裡,省時省心。如果你需要後端動態生成內容,那就使用雲函數(叫做 FaaS),通過服務商提供的邊緣計算、而不是你的主機自帶的 CPU 算力。

科技動態

1、老飛機的模擬飛行

微軟公司有一款著名的遊戲《微軟模擬飛行》,玩家可以模擬操縱各種飛機,在世界各地實景飛行,效果非常逼真。

遊戲製作團隊最近盯上了博物館裡面的老飛機,其中就有著名的休斯 H-4 大力神巨型水上運輸機。

這是有史以來最大的飛機,跟足球場差不多大小。它只在1947年飛行過一次,短暫脫離水面數十秒,然後就放在倉庫裡,直到報廢后移入博物館。

微軟公司把這架飛機搬入了遊戲,玩家現在可以模擬駕駛它,體驗一下這架傳奇飛機的駕駛感受。下圖就是遊戲畫面。

製作團隊下一步準備把更多的老飛機搬入遊戲,"復活"那些再也不可能上天的飛機。目前,已經完成了大約300架老飛機的掃描。

2、迪斯尼的年齡調整算法

迪斯尼公司發佈了一個影視專用的年齡調整算法,可以讓演員變得更年輕或更年老。

這種算法可以讓老年演員扮演年輕人,反之亦然。

現在的觀眾必須明白,你看到的一切都可能是假的。相貌可以美顏,年齡可以加減,背景可以綠幕,沒有什麼是做不到的。

3、兒童遊樂場

兒童遊樂場通常都是一些傳統設施,比如滑梯、鞦韆、雙槓、蹺蹺板等。

一位新西蘭建築師認為,這些設施都沒有樂趣,模仿大自然的環境才是更好的選擇。

他就設計了一個類似野外環境的兒童遊樂場。

遊樂設施都搭建在巨石之上,但其實沒有看起來那麼危險,巨石都由鋼棒進行固定,地面採用有彈性的橡膠地板,不會摔傷。

開張一個月以來,孩子們很愛玩,沒有人受傷。

4、智能繃帶

傳統繃帶無法知道傷口癒合情況,有時解開繃帶,才發現藥物無效,傷口還在潰爛。

為了解決這個問題,一個國際研究團隊開發了智能繃帶。

這種智能繃帶採用超薄、可彎曲的電路板,會自動偵測傷口癒合程度,根據細菌的繁殖情況釋放抗生素或其他藥物。

它帶有無線模塊傳送數據,為了輕薄,它不帶有電池,通過天線接收能量。

文章

1、Next、Nuxt、Nest的區別(英文)

Next.js、Nuxt、NestJS 是三個流行的 JS 框架,本文解釋它們的區別。

2、為什麼業界轉向內存安全語言(英文)

本文介紹大公司使用內存安全語言(Java、Rust 和 Kotlin)替代 C/C++ 的情況。

3、如何使用 360 相機生成航拍圖像?(英文)

作者介紹如何使用 OpenDroneMap 這個軟件,為 360 相機拍攝的視頻建模,合成為航拍視角的空間圖像模型。

4、打造我的家庭辦公環境(英文)

作者詳細介紹,自己怎麼在家裡佈置一個舒適的電腦工作環境。

5、我如何以 SerenityOS 謀生(英文)

作者是開源軟件 SerenityOS 的作者,2021年開始,全職投入開源開發。他介紹自己怎麼謀生。

6、我的個人 IT 基礎設施(英文)

Mathematica 軟件的創始人 Stephen Wolfram 介紹自己家裡的 IT 基礎設置,他常年在家辦公。

他還自制了一個"步行桌"(上圖),可以在散步的時候,使用筆記本電腦。

7、Playwright 如何繞過登錄驗證碼(英文)

Playwright 是一個無頭瀏覽器框架,可以編寫腳本,對網站 UI 進行自動化測試。有些網站的登錄,需要身份驗證器的一次性驗證碼,怎麼繞過去呢?

8、使用 Ruby 語言理解網絡堆棧(英文)

本文使用 Ruby 語言示例,解釋網絡基本概念。第一部分解釋 UDP 協議,寫得很好。

工具

1、Convex

一個類似 Firebase 的狀態管理服務,前端狀態可以存在它的服務器上,然後你的所有客戶端都可以得到狀態的實時更新。

2、兔年定製頭像

上傳照片,合成一張兔年頭像,多種樣式可選,代碼開源。(@xiaoli1999 投稿)

3、ElasticView

一款 ElasticSearch 的桌面客戶端,用來監控 ES 狀態和操作。( @lin2415016 投稿)

4、RATH

開源的數據分析和數據可視化工具,只需要導入數據,它自動進行數據分析,找出規律,生成可視化視圖。(@AntoineYANG 投稿)

5、tl-rtc-file-tool

一個 Web 應用,演示了基於 WebRTC 的各種媒體流傳輸功能,代碼開源。(@iamtsm 投稿)

6、EasyNode

簡易的個人 Linux 服務器管理面板(基於Node.js),前後端都開源。(@chaos-zhu 投稿)

7、vscode-gptcommit

VS Code 插件,使用 GPT 模型自動生成 Git 提交說明。(@pwwang 投稿)

8、Tweek Calendar

一個最簡化的任務管理 Web App,非常簡潔精美。

9、BetterDisplay

一個開源的 MacOS 應用,可以精細調節蘋果電腦的各種顯示參數。

10、berty

一個群聊應用,最大特點就是不需要互聯網,通過低功耗藍牙通信,很適合小範圍內的現場廣播。

資源

1、Mastering Bitcoin(第二版)

免費的英文電子書,介紹加密貨幣的原理。

2、satellite-track

基於 Web 的衛星軌道可視化項目,可以查看不同類別的衛星,代碼開源。(@jiangteng2019 投稿)

3、tabler-icons

這個網站提供免費的圖標,目前有1900多個,所有圖標都是統一風格,簡單美觀。

4、Some Assembly Required

一份圖文並茂的彙編語言英文介紹,針對零基礎的初學者,半小時可以讀完,並附有代碼示例,以便進一步學習。

5、快速塗鴉

一個谷歌推出的小遊戲。系統告訴你一個詞語(比如自行車、眼鏡、輪船......),讓你在網頁上把它畫出來。人工智能會猜測你畫的是什麼,只要猜對了,就說明你畫得很像。

圖片

1、奧爾梅克頭像

1930年代,危地馬拉發現了埋在地下的巨大頭像,高度都在2米到3米。

考古學家認為,它們是古代奧爾梅克人制作的,時間大約距今3000年到5000年之前。

經過幾十年的發掘,目前一共發現17個頭像,現在都陳列在博物館

文摘

1、蘋果收購 NeXT 的往事

二十五年前的1996年12月20日,我在 NeXT 公司擔任系統工程師。該公司是喬布斯在1985年創立的,我是該公司在加拿大僅有的三名員工之一。

當時我們都沒有手機,公司給我們的大多數信息都通過一個叫做 Audix 的語音郵件系統傳送。我們接受消息時,就撥打 1-800-345-5588 這個號碼,收聽語音郵箱裡面的公司留言。

那天,我們突然收到了一條緊急消息,所有員工都必須在下午2點撥打這個號碼,要公佈一個重大事件。當時我正在街上,不得不到處尋找一個可靠的固定電話,最後找到了一個博物館的付費電話。

到了下午2點,我們被告知 NeXT 已被蘋果公司以4億美元的價格收購。(事後回想,正確的說法應該是蘋果付給 NeXT 4億美元,讓後者去收購自己。幾年後,大約70%的蘋果副總裁都來自 NeXT。)

我震驚了,沒想到事情會這樣。

當時,NeXT 公司其實很困難。創始人喬布斯似乎把所有的時間,都花在他的另一家公司 Pixar。雖然 NeXT 還有一些盈利,但主要來自銷售 WebObjects(一個 Java 應用服務器)。喬布斯對外宣稱的革命性新工作站和操作系統都實現不了,現在他只能靠銷售價格為5萬美元企業服務器軟件維持公司,這一定讓他感到很沮喪。

蘋果公司似乎也陷入了死亡漩渦,並且已經非常接近資金枯竭。

蘋果最感興趣的是 NeXT 的 NeXTSTEP 操作系統,該操作系統最初與 NeXT 工作站一起提供,但已被移植到英特爾 CPU。說實話,我們在 NeXT 的人其實不怎麼用這個系統。

NeXT 的每個人都不清楚這次合併是否會奏效,好在結果很不錯。合併發生在蘋果的歷史低點,一旦喬布斯重新擔任蘋果 CEO,一場難以置信的技術和業務轉變就開始發生了。

NeXT 的軟件和硬件成為蘋果一切產品的基礎。NeXTSTEP 操作系統替代了 Mac OS,成為了 Mac OS X 的基礎;NeXT 的 Project Builder 和 Interface Builder 變成了 Xcode;NeXT 對 Objective-C 語言的熱愛最終創造了 Swift。

合併時,NeXT 大約有 400 名員工,而蘋果只有幾千人。今天,蘋果有16萬員工,我很好奇多少 NeXT 工作人員還留在蘋果,我知道十幾個,可能還有更多,會到100人嗎?

言論

1、

我是 React 用戶,最讓我煩惱的是,React 團隊對開發者面對的實際問題,似乎一無所知,只關注一些不那麼重要的事情。

他們設計了很多新的做法(比如事件處理、數據獲取等等),確實可以更快地加載網頁。但是讓開發者關注這些東西,對於高級用途來說,這是完全錯誤的。

-- 《拯救 React》

2、

領導者的作用不是行使權力,而是分配權力。

有效的領導者通過設定方向、確定人員(找到具有正確技能和背景的人)、授權他人、確保決策執行,來節省自己的時間,並擴大自己的影響。

-- 《我的創業箴言》

3、

在程序員心中,他們認為自己是建築師。當他們來到一個新地方,他們想做的第一件事就是推平這個地方,並建造一些宏偉的東西。

程序員對漸進式翻新不感興趣:修修補補、改進、在花壇種上綠植......他們不想做這些事,他們總是想扔掉舊代碼並重新開始,原因並非是認為舊代碼一團糟,而是編程的一個基本法則:閱讀代碼比編寫代碼更難。

-- Joel Spolsky

4、

開發 Chrome 瀏覽器時,有一次我們討論,應該允許網頁重定向多少次。有人提出設為10次,超過這個數字,Chrome 就會放棄加載網頁。然後,另一個人說不行,必須設為30次,否則《紐約時報》網站就會停止工作。於是,Chrome 的重定向上限就是30次。

-- 《我在 Chrome 團隊的10年》

5、

曾經有一段時間,成為一名全棧開發人員是可能的,可以做到對中等複雜系統的每一層都有很好的熟悉度。

但是,今天的系統涉及太多的組件,想要掌握每個堆棧的每個組件,是不切實際的。正如一位開發者所說:"程序員現在不得不在數百個 API 之間充當某種巨大的手動管理層。"

-- 《更快的馬》

歷史上的本週

你做過不在乎結果的項目嗎?(2022 No.195)

大家不出門,經濟怎麼辦?(2021 No.145)

漫遊類的遊戲,將會越來越多(2020 No.93)

一篇好玩的論文(2019 No.43)

鳴謝

週刊得到國內新一代知識管理與協作平臺 FlowUs 的幫助,深表感謝。

FlowUS = 文檔 + 表格 + 網盤。你可以用它寫文檔、做主頁、管理數據、存儲文件等等。

每一期週刊同時發佈在 FlowUs 專欄,歡迎大家也去開通自己的專欄和主頁。

(完)