分類彙整:開發筆記

CentOS 7 Squid 無法解析網域

使用 CentOS 的套件管理 yum 安裝軟體,絕大多數都可以正常使用,
而 squid 我認為屬於極小的部分。

在安裝 squid 後,可以直接瀏覽 IP ,卻無法瀏覽網域。
如果嘗試瀏覽網域會出現 “無法將您輸入的網站主機位置轉譯成正確的 IP 位置” 錯誤 (ERR_DNS_FAIL)。
想到在 Amazon Linux 上並沒有一樣的問題,猜測是 selinux 的問題,
快速地瀏覽了 /var/log/audit/audit.log ,發現一段

type=AVC msg=audit(1615794308.692:1139): avc: denied { getattr } for pid=2011 comm="squid" path="/etc/resolv.conf" dev="vda1" ino=4086 scontext=system_u:system_r:squid_t:s0 tcontext=system_u:object_r:unlabeled_t:s0 tclass=file permissive=0

squid 沒有權限打開 /etc/resov.conf 檔案,無法取得 DNS Server 進行查詢。
解決方案很簡單,在 /etc/squid/squid.conf 加上 dns_nameservers 即可。

dns_nameservers 168.95.1.1

Bind 防禦 DNS Amplification Attacks ( DNS 放大攻擊 )

最近在新加坡設立了一臺 AWS 主機,並且搭配 WHM/cPanel 做為網站伺服器。多數的運作都還算不錯,除了 DNS 伺服器,被做為攻擊 cpsc.gov 美國消費品安全委員會的跳板。有大量 IP 向主機發出 dig 請求,雖然服務正常,但由於數量極大,保守估計耗費了 100M 的頻寬在回應攻擊請求。

DNS伺服器攻擊流量
DNS伺服器攻擊流量

繼續閱讀 Bind 防禦 DNS Amplification Attacks ( DNS 放大攻擊 )

Unity3d : WebCamTexture Convert To Texture2D

General case, we can use these scripts below to  display camera on the scene in the Unity3d.

  WebCamTexture wc = new WebCamTexture ();
  GameObject.Find (“/plane”).renderer.material.mainTexture = wc;
  wc.Play ();

But sometimes we want to save camera to image, or realized video streaming. We can use WebcamTexture.GetPixels() and Texture2D.SetPixels(), but you must noticed returning width and height.

繼續閱讀 Unity3d : WebCamTexture Convert To Texture2D