2026年10月21日 星期三

FreeBSD 時間設定

時區設定
 tzsetup


NTP 設定
編輯 /etc/ntp.conf
# 指定僅向 tock.stdtime.gov.tw 進行對時
server tock.stdtime.gov.tw iburst

# 預設拒絕外部所有不信任的存取(安全性設定)
restrict default limited kod nomodify notrap noquery nopeer
restrict source limited kod nomodify notrap noquery

# 開放本機無限制存取
restrict 127.0.0.1
restrict ::1

# 閏秒清單
leapfile "/var/db/ntpd.leap-seconds.list"

啟用服務
service  ntpd onestart

FreeBSD Sylve Jail 設定 xrdp + 中文輸入

pkg install -y xrdp xfce xorg xorgxrdp
pkg install -y xorg xfce xfce4-goodies
pkg install -y noto-tc
pkg install -y zh-CJKUnifonts
pkg install -y zh-CNS11643-font
fc-cache -f -v

pkg install -y fcitx5 fcitx5-configtool fcitx5-gtk2 fcitx5-gtk3 fcitx5-gtk4 fcitx5-qt5 fcitx5-qt6
pkg install -y zh-fcitx5-chewing zh-fcitx5-chinese-addons zh-fcitx5-table-extra zh-fcitx5-table-other

service dbus start
service xrdp start
service xrdp-sesman start 

XRDP 設定 ~/.startwm.sh
編輯 /usr/local/etc/xrdp/startwm.sh
# 系統選單與桌面語系
export LANG=zh_TW.UTF-8
export LC_CTYPE=zh_TW.UTF-8
export LC_MESSAGES=zh_TW.UTF-8

# Fcitx5 輸入法模組
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

exec startxfce4

修正 /usr/local/etc/xrdp/key.pem /usr/local/etc/xrdp/cert.pem
service xrdp stop
rm -f /usr/local/etc/xrdp/cert.pem /usr/local/etc/xrdp/key.pem

# OpenSSL 手動生成現代化 SHA256 憑證 (有效期限 3650 天)
openssl req -x509 -newkey rsa:2048 -sha256 -nodes \
  -keyout /usr/local/etc/xrdp/key.pem \
  -out /usr/local/etc/xrdp/cert.pem \
  -days 3650 \
  -subj "/CN=FreeBSD-Jail-xrdp"

# 修正檔案權限,確保 xrdp 帳號可存取
chown _xrdp:_xrdp /usr/local/etc/xrdp/key.pem /usr/local/etc/xrdp/cert.pem
chmod 600 /usr/local/etc/xrdp/key.pem
chmod 644 /usr/local/etc/xrdp/cert.pem

2026年10月20日 星期二

FreeBSD 更新

更新 FreeBSD 系統本體 (Base System)
檢查並下載系統更新檔
freebsd-update fetch

安裝下載好的系統更新
freebsd-update install

更新第三方套件 (Pkg)
pkg update
pkg upgrade

清理無用的舊版套件與快取
pkg autoremove
pkg clean -a

FreeBSD 安裝 sshfs

pkg install -y fusefs-sshfs

載入 FUSE 核心模組
kldload fusefs

設定開機載入 fusefs
sysrc -f /boot/loader.conf fusefs_load="YES"

FreeBSD 啟用 Serial Console(透過 Serial 登入系統)

編輯 /boot/loader.conf,加入以下內容以啟動 Boot Loader 的 Serial 輸出:
boot_multicons="YES"
boot_serial="YES"
comconsole_speed="115200"
console="comconsole,vidconsole"

編輯 /etc/ttys 修改
ttyu0   "/usr/libexec/getty 3wire.115200"   vt100   on  secure

2026年10月19日 星期一

NAT LoopBack Iptable 設定範例

IF=vmbr0
PORT_FROM=3142
PORT_TO=3142
DEST=172.16.255.8
LAN_NET="172.16.0.0/16"

# 1. DNAT:將外部或內部存取 Port 的流量轉發至目標 VM/LXC
# (移除 -i $IF 限制,允許來自內網與外網的流量都能觸發轉發)
iptables -t nat -A PREROUTING -p tcp --dport $PORT_FROM -j DNAT --to $DEST:$PORT_TO

# 2. NAT Loopback (Hairpin SNAT):
# 當來源為內網 (LAN_NET) 且目的地為 DEST:PORT_TO 時,將來源 IP 改寫為防火牆的 LAN IP
iptables -t nat -A POSTROUTING -s $LAN_NET -d $DEST -p tcp --dport $PORT_TO -j MASQUERADE

# 3. FORWARD:允許此轉發流量通過防火牆
iptables -A FORWARD -p tcp -d $DEST --dport $PORT_TO -j ACCEPT

2026年10月16日 星期五

FreeBSD Sylve 增加 pam 登入方式

編輯  /usr/local/etc/sylve/config.json 修改
"auth": {
        "enablePAM": true 
    },

service sylve restart