4月 13, 2020

FortiGate 防火牆物件最大表(Maximum Values Table)

在 Fortigate 的設計中,每個網路位址與管理項目都看作是一個物件,防火牆物件儲存量依各型號有所不同。對照表可見 Maximum Values Table(或handbook),而數量限制則有全域(global)、虛擬域(VDOM)兩個分類。
All objects in the maximum values table have either a global limit, which applies to the entire FortiGate configuration, or a VDOM limit, which applies only to a single VDOM.

例如像「IP pools 1024」這就是每個 VDOM 各自有 1024 筆額度;
而「Addresses 20000」則是整台防火牆共可存放二萬筆位址。

在防火牆上可透過指令 print tablesize 進行查詢。
手上的機器 FortiGate 300D:位址物件(整台)20000筆、位址群組(整台)2500組、每個群組可有300筆位址物件。

4月 10, 2020

透過 Websocket 讀取健保卡

1. 安裝後端元件

2. 讀卡指令(Websocket)
$(document).ready(function(){ connectws(); });
function connectws()
{
  wsUri = "wss://iccert.nhi.gov.tw:7777/echo";  /* Backend */
  websocket = new WebSocket(wsUri);
  websocket.onopen = function(evt) { onOpen(evt) };
  websocket.onclose = function(evt) { onClose(evt) };
  websocket.onmessage = function(evt) { onMessage(evt) };
  websocket.onerror = function(evt) { onError(evt) };
}
function ws_GetBasic() { $("#name").html(""); websocket.send("GetBasic"); }   
function onOpen(evt) { $("#state").html("健保卡元件/正常"); }
function onClose(evt) { $("#state").html("Not connected"); }
function onMessage(evt) 
{ 
  var message = evt.data;
  if (message.substring(0, 9) == 'GetBasic:')
  {
    var res = message.split(",", 5);  
    // Data in res[1] ~ res[3]
  }
}
function onError(evt) { $("#state").html("健保卡元件/失敗" + evt.data); }