分類
DNS 最新文章

阻擋色情網站的 DNS 設定

網路色情是一個大生意,對於成年人來說,是一種需求。但對未成年人而言,是一種傷害(?),許多家長因為同年齡小孩的比較或是時代變遷,不得不提早給予小孩 3C 產品,但網路是雙面刃,有很多的資源,也有很多的詐騙與色情,防不勝防,該如何阻止呢?

分類
最新文章

EDNS

EDNS(Extension mechanisms for DNS)是一種域名系統(DNS)擴展協定,它可以在 DNS 查詢中添加額外的資料,如DNSSEC(DNS安全擴展),以增強 DNS 協定的功能。EDNS 在DNS 協定中添加了一些新的擴展區塊,使得 DNS 協定可以携帶更多的資訊。EDNS 擴展協定提供了更多的選項,例如增加 DNS 查詢大小限制,使 DNS 查詢和回應更加高效和可靠。EDNS 還提供了更好的 DNS 安全和防止 DNS 攻擊的保護機制。

EDNS 會擴展 UDP 封包,原 UDP 封包大小為 512 bytes,但 EDNS 的 UDP 封包大小為 4096,若有資訊安全設備的話很可能會造成誤判。

分類
教學 最新文章 網域名稱

DNS 設定,EMail 專用的 SPF 紀錄

SPF 紀錄是用來防止假冒郵件,但並不是用 SPF 來判別郵件的內容是不是假冒郵件,也不是用 SPF 來判是不是垃圾信件。那 SFP 要怎麼用呢? 要如何設定 SPF?

SPF (Sender Policy Framework)

SPF (Sender Policy Framework) 是一種用於防止電子郵件假冒的技術,它使用 DNS 記錄來控制哪些郵件主機可以發送以域名作為發件人的電子郵件。

通過定義哪些 IP 位址或主機名允許發送以該域名作為發件人的電子郵件,SPF 可以幫助防止電子郵件假冒,因為接收方的郵件服務器可以通過驗證電子郵件的發件人是否是合法的來源,來識別潛在的垃圾郵件或惡意郵件。

換句話說,我們將郵件主機的 IP 位址或是主機名稱放到 DNS 紀錄裡面,當對方郵件主機收到信件時,它就可以透過 DNS 記錄來確認送信主機的 IP 位址或主機名稱是不是正確的來源。

SPF 使用 TXT 紀錄

SPF 其實不是一個 DNS 紀錄類型,常見的紀錄類型有 A、MX、NS、CNAME、TXT。TXT 就是一般文字格式,SPF 使用 TXT 紀錄來描述那些主機是郵件伺服器,所以我們在使用 SPF 紀錄時,要建立的是 TXT 紀錄。

SPF 的範例

example.com. IN TXT “v=spf1 a mx -all”

這個記錄表示:

v=spf1 表示 SPF 的版本。
a 表示當前域名的 A 記錄是合法的發件人。
mx 表示當前域名的 MX 記錄是合法的發件人。
-all 表示其他任何發件人均為不合法。

這個示例中的 SPF 記錄表明,任何在當前域名的 A 或 MX 記錄中的主機都是合法的發件人,而所有其他主機都不是合法的發件人。

請註意,SPF 記錄可以非常覆雜,可以涵蓋多個域名和 IP 地址,因此上面的示例只是一個簡單的演示。

分類
WordPress 教學 最新文章

變更網站名稱,如何搬移 Jetpack 的舊資料

若您要將網站的網域名稱換一個新的,不論是覺得網址不好,有可能是當初註冊的網域名稱太長,或是公司更名,產品更名,又或者是發現新的頂級域名很符合您的網站風格。所以有替換網域名稱的想法?

分類
技術文章 網域名稱

DNS 除錯教學系列文章(5) – 常見 DNS 問題與 dig 除錯方法

DNS 系列文章目錄

DNS 除錯教學系列文章(1) – DNS 入門
DNS 除錯教學系列文章(2) – DNS 架構
DNS 除錯教學系列文章(3) – DNS 紀錄
DNS 除錯教學系列文章(4) – dig 指令
DNS 除錯教學系列文章(5) – 常見 DNS 問題與 dig 除錯方法

首先你一定有一個問題,或是查詢的目標,譬如問題是郵件不會通、網站打不開、或是想知道 www 目前指到那一台伺服器,針對你要查詢的問題,首先查 NS 的位址然後再查詢你要確認的狀況。

分類
教學 最新文章

如何建立 WordPress 的子主題

當我們安裝好 WordPress 的佈景主題後,可能覺得對於字型大小不滿意,或是對於圖片的大小不滿意,想要針對目前的佈景主題去做一些小修改的時候,就要透過子主題的方式。

如果你只是把圖片、文字換掉,那個不是修改佈景主題,不需要去建立子主題,建立子主題的目的是要對原本的佈景主題客製化一些內容,或是要大幅度的修改程式碼,才會使用子主題。

難道不能直接修改佈景主題嗎?

分類
Gandi.net 最新文章

Git 小秘訣,簡化與加快 Git 操作

Git 指令小訣竅

快速切換回去剛剛的分支

用 (-) 就可以切換回剛剛的分支,跟 Shell 一樣

# Checkout master
git checkout master
# Create and checkout to a new branch
git checkout -b git-tips
# Checkout master
git checkout master
# Checkout to the previous branch (git-tips)
git checkout -

 

刪除已經合併回 master 的分支

# Make sure you have checked out master first
git checkout master

# Delete merged branches to master except master
git branch --merged master | grep -v "master" | xargs -n 1 git branch -d

如果不小心把 master 刪除了,用下列指令救回來就好(前提是你有 push 過遠端程式庫):

git checkout -b master origin/master

 

刪除遠端程式庫已不存在的分支

如果你想先確定一下有哪些分支會被刪除,但不想實際刪除,請用 –dry-run:

git remote prune origin --dry-run

實際刪除:

git remote prune origin

 

從目前分支為基礎建立一個新的分支

如果你在 dev 分支,但想要從 master 開始建立分支,基本的作法是:

git checkout master
git checkout -b new-branch

你其實可以直接從 dev 分支開出一個基於 master 的分支

git checkout -b new-branch master

同理,直接基於其他分支開出新的分支

git checkout -b new_branch base_branch

 

Git 設定小訣竅

排除某些檔案,並將設定檔套用在所有專案上

touch ~/.gitignore
git config --global core.excludesFile ~/.gitignore

或是寫入設定檔:

vi ~/.gitconfig:
[core]
 excludesFile = ~/.gitignore

 

在 Fetch/Pull 時自動清除遠端已砍掉的分支

git config --global fetch.prune ture

或是寫入設定檔:

vi ~/.gitconfig:
[fetch]  
 prune = true

 

在 rebase 互動模式時,預設啟用 Autosquash

git config --global rebase.autosquash true

或是寫入設定檔:

vi ~/.gitconfig:
[rebase]
 autosquash = true

 

設定預設的編輯器

git config --global core.editor vim

或是寫入設定檔:

vi ~/.gitconfig:
[core]
 editor = vim

 

自訂 diff 工具

git config --global diff.tool vimdiff

或是寫入設定檔:

vi ~/.gitconfig:
[diff]
 tool = vimdiff

選項有: vimdiff / magit / meld / kdiff3

 

Merge 的時候有時候會寫是 diff 資訊,也可以一同設定

git config --global merge.tool vimdiff

或是寫入設定檔:

vi ~/.gitconfig:
[merge]
tool = vimdiff

 

Git 指令別名(Alias)

有時候你需要輸入又臭又長的指令,像是:

git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative

不人道!可以寫入 gitconfig 就好了,之後就可以用 git lg 或是 git lol 來執行簡化過得指令。

vi ~/.gitconfig:
[alias]
  lg=log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative
  lol=log --graph --decorate --pretty=oneline --abbrev-commit

 

文章出處:https://about.gitlab.com/2016/12/08/git-tips-and-tricks/

—-

作者:HaWay, Gandi.net 技術傳教士/GitLab 愛好者, 聯絡方式:haway[at]rsync.tw

分類
GitLab 最新文章

GitLab 10.3 功能介紹

原文連結:https://about.gitlab.com/2017/12/22/gitlab-10-3-released/

分類
SSL 技術文章 教學 最新文章

在 Google Cloud Platform(GCP) 上使用 Bitnami 版的 WordPress 如何安裝憑證

如果你是用 Bitnami 版的 WordPress,然後是使用 Google Cloud Platform(GCP) 的平台,可以參考本篇的作法把你的憑證裝起來。

你需準備幾個檔案:

  • 私有金鑰(Private Key)
  • 憑證(Certificate)
  • 中繼憑證(Imtermediate Certificate)

如果你不知道上面這些是什麼東西,請先詳細閱讀 SSL 基礎 來講整個步驟與原理搞懂。

先切換程 root 身份

$ sudo su -

在 /opt/bitnami/apache2/ 建立一個 myssl 資料夾來存放相關檔案。上傳(使用 sftp 或是相關 FTP 軟體)憑證(.crt), Private key(.key) 與中繼憑證(ca-bundle.crt) 到 myssl 資料夾,名稱自訂,但不要搞混。

# mkdir /opt/bitnami/apache2/myssl

修改 Apache 設定檔,改過之後 Apache 就會從主設定中去載入 httpd-ssl.conf 這個檔,這樣做的好處是主設定都在 httpd.conf 中,而利用載入的方式去讀取 SSL 的相關設定,這樣把所有 SSL 的設定檔都放在一個地方,如果你突然要關閉 SSL,就只要把這一行載入的再重新註解就好了。

# vi /opt/bitnami/apache2/conf/httpd.conf

把註解(#) 拿掉
Include conf/extra/httpd-ssl.conf

修改 httpd-ssl.conf :

# vi /opt/bitnami/apache2/conf/extra/httpd-ssl.conf

<VirtualHost _default_:443>

路徑改成你上傳的憑證
 SSLCertificateFile "/opt/bitnami/apache2/conf/server.crt"

路徑改成你上傳的 Private key
 SSLCertificateKeyFile "/opt/bitnami/apache2/conf/server.key"

路徑改成你上傳的 中繼憑證
 SSLCACertificateFile "/opt/bitnami/apache2/conf/ssl.crt/ca-bundle.crt"

請注意看 SSLCertificateFile、SSLCertificateKeyFile 與 SSLCACertificateFile 這三個是不一樣的名稱,並且指向不同的檔案,請不要搞混了。

重新啟動 apache 伺服器,不會的話就整台伺服器重開。搞定!

分類
教學 最新文章

名稱伺服器的正確設定方式

名稱伺服器(NameServers) 的作用是將 DNS 的管理權向下授權,意思就是如果你指定了這個域名的 NameServer 紀錄,表示此域名的 DNS 紀錄管理權已經授權到其他機器。