Windows | The Will Will Web

The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

使用 GnuPG 確保傳輸重要檔案或文件的過程能確保機密性與完整性

當我們要進行機密文件傳輸時,可能會面臨許多不同的傳輸方式,但是過程中必須確保資訊安全,因此你就會需要考量到許多因素。這篇文章我打算分享如何利用 GPG 工具對檔案進行簽章加密,檔案無論透過任何方式傳送給對方,都只有明確指定的對象可以開啟檔案,藉此達到資訊安全的中的機密性(Confidentiality)與完整性(Integrity)要求。

... 繼續閱讀 ...

如何在 Windows Server 2022 使用 containerd 執行 Windows Containers

其實 Windows Containers 都是以 Windows Server 為基礎的 base image 來運行的,但從 2021 年 9 月微軟發佈了 Updates to the Windows Container Runtime support 文章,預告了未來將不再使用 DockerMsftProvider API 來安裝 Docker EE (企業版) 軟體,之後預計會全部移轉到開源的 containerdMoby 或即將轉付費方案的 Mirantis Container Runtime 等等。這幾天我就想說來研究一下如何用 containerd 來執行 Windows Container,結果根本就是在玩踩地雷,我研究了足足三天才搞定完整可成功運行 Windows Containers 的 containerd 容器環境!這篇文章我將分享我在 Windows Server 2022 實作的完整過程。

... 繼續閱讀 ...

如何有效清空 PowerShell 中 PSReadline 的所有歷史紀錄

我的 如何打造一個華麗又實用的 PowerShell 命令輸入環境 文章 (影片在此) 幫助了不少人調整他手中的 PowerShell 命令列環境,其中有個功能是在打字的時候可以提示你先前打過的所有命令,非常方便且實用。但上周有同事問了我一個問題,他曾經在 PowerShell 中輸入過一些敏感資料,但是又找不到清除歷史紀錄的方法,問我該怎麼辦才好。這篇文章我將分享解決之道!

... 繼續閱讀 ...

LINQPad 如何多機共用 Queries、Snippets 與 Plugins and Extensions 資料夾

LINQPad 有三個資料夾,預設放在使用者目錄的「我的文件」目錄下(~/Documents),分別是 LINQPad Plugins, LINQPad Queries, LINQPad Snippets 這三個。為了讓我的筆電與家中電腦可以同步這些資料,我特別將這幾個資料夾移至 Dropbox 共享資料夾中,然後透過 Symbolic Link 連結回去,如此一來我就不用特別調整 LINQPad 設定,我只要調整每台電腦的資料夾與連結設定,就可以很方便的讀取到同步後的 LINQPad 完整設定與資料。

... 繼續閱讀 ...

在不同的作業系統下如何設定包含小數點的環境變數名稱

一般來說,我們極少會在環境變數上使用小數點( . )當成環境變數名稱來使用,但是在特定應用程式的條件下,可能被迫需要做出這樣的設定。像透過環境變數設定 .NET 應用程式的 LogLevel 就很可能會用到小數點來進行設定,本篇文章我將說明不同作業系統下的設定方式與潛在問題。

... 繼續閱讀 ...

如何在 Windows 安裝 Gitea 源碼版控系統與 PostgreSQL 14 資料庫

Gitea 是一套功能相當完整卻又非常輕量的 Git 源碼版控與議題追蹤系統,我在這幾年也幫好幾家公司安裝過,基本上在 Windows 上面安裝 Gitea 的過程十分容易,只要幾個命令就可以安裝到好,但是若真的要一次安裝到好,其實還是有一些門檻,畢竟網路上的資料太多太亂,這篇文章我將分享我的安裝過程,基本上照著做應該都可以順利的安裝到好。

... 繼續閱讀 ...

利用 Multipass 在區域網路架設一套 MicroK8s 叢集環境

我之前有篇 使用 MicroK8s 架設 Kubernetes 叢集的完整過程解析 文章,講解了完整的 MicroK8s 體驗的過程。雖然你可以在 Windows 上輕鬆的架設出一套 Kubernetes 叢集,但是由於 MicroK8s 的底層使用到了 Multipass 工具來建立虛擬機器(VM),事實上透過 Multipass 建立的 VM 在每次重開機的時候都會變更 IP 地址,因此只要 VM 重開機,基本上叢集就會壞掉,因為所有 Worker Nodes 將無法找到 Control Plane 的 IP 地址。這篇文章我來說說這個問題的解決方法!

... 繼續閱讀 ...

分享一組我在啟動 Windows Sandbox 時都會執行的初始設定腳本

在本機進行 Windows 應用程式的測試,最簡易的方法就是啟動 Windows Sandbox 沙盒環境,不用十秒就可以開啟一台臨時的虛擬機,關閉後所有資料都不會保留,非常方便用來驗證許多安裝作業流程。不過 Windows 10 內建的這個 Windows Sandbox 實在是太乾淨了,每次啟動都要手動安裝許多工具才能開始使用,所以我打算用這篇文章記錄一下我會在啟動後執行的自動化命令。

... 繼續閱讀 ...

如何在 Windows 使用 Git 版控時可以區分檔案名稱大小寫

今天被問到一個關於 Git 版控的問題,同事提到我們有個網站專案的 Repo 裡面有個 *.svg 檔案,之前 git commit 的時候使用 helloWorld.svg 這樣的檔名,但是部署的時候發生錯誤,客戶告知必須用英文小寫的檔名才能正常運作,所以他就來修改一下檔案名稱,結果卻發現 Git 怎樣都無法修改檔名大小寫部分,問我該怎麼辦。這篇文章我就來跟各位說明這個問題的來龍去脈與解決方法。

... 繼續閱讀 ...

如何在 Windows 安裝 Cygwin 的 SSHD 服務並正確使用 Rsync 同步檔案

我最近嘗試在 Windows 透過 Rsync 搭配 OpenSSH 備份檔案,結果怎樣都無法設定成功,直到今天才嘗試出一個可行的作法。雖然在 Windows 安裝 Cygwin + cygsshd 不是我心目中理想的解決方案,畢竟是開源且沒有技術支援的方案,出問題比較沒人可以救你,但這至少是一個可行方案。這篇文章將說明設定過程的完整步驟。

... 繼續閱讀 ...

如何在 Windows 架設高安全性的 SFTP (SSH File Transfer Protocol) 伺服器

延續的我前一天的 如何在 Windows 正確的安裝與設定 OpenSSH Server 服務 文章,在 Windows 平台架設 OpenSSH Server 搭配 SFTP 就能進行安全的檔案傳輸,防火牆也只需要開啟 Port 22 而已,清楚明瞭,系統配置預設也非常安全。這篇文章我就來分享如何對 SFTP 進行安全的設定,讓你在遠端檔案傳輸時能夠更加安全。

... 繼續閱讀 ...

如何在 Windows 正確的安裝與設定 OpenSSH Server 服務

我這幾年有替幾位客戶實現 Windows 平台的自動化作業,我認為 Windows 在遠端檔案傳輸方面,一直都沒有內建非常理想的解決方案。內建的方案不外乎是開一堆 Ports 且預設傳輸沒加密的 FTP 服務、不太安全的 WinRM (預設沒加密)、或是被大部分企業禁用的 SMB 協議。雖然加裝 TLS/SSL 憑證可以解決安全連線的問題,但是憑證的管理與配送,並不是所有企業都能做好,甚至門檻頗高。我認為在 Windows 平台最安全、最有效率的解決方案,還是提供 sshd 服務 (OpenSSH Server),搭配 SFTP 就能進行安全的檔案傳輸,這篇文章我就來分享如何在 Windows 正確安裝 OpenSSH Server 服務的所有步驟。

... 繼續閱讀 ...