FreeBSD備忘錄
Created 2018-06-03 / Updated 2022-11-22一、通用:
安全补丁
# freebsd-update fetch
# freebsd-update install
小版本更新(13.0 -> 13.1)
# freebsd-update -r 13.1-RELEASE upgrade
# freebsd-update install
更新pkg
# pkg update
# pkg upgrade
crontab相关
从左到右依次为「分、时、日、月、星期」:
* * * * * <要执行的命令>
每隔2分钟执行一次命令:
*/2 * * * * <要执行的命令>
crontab的shell默认为/bin/sh
,为便于使用tcsh
下设置的环境变量,我把它改成/bin/tcsh
:
% crontab -e
SHELL=/bin/tcsh
重啟系統
# shutdown -r now
关机
# shutdown -p now
添加用戶
# adduser
系统邮件相关
刪除所有未讀郵件:
$ mail
& d *
刪除所有已讀郵件:
$ mail -f
& d *
中文郵件亂碼解決:
$ vi mailfile.txt
### 內容開始 ###
Subject: 郵件主題
Content-type: text/plain; charset=utf-8
郵件內容
...略
### 內容結束 ###
$ sendmail 收件人 < mailfile.txt
這樣,對方收到你的郵件就不會亂碼了。
轉發root的郵件:
# vi /etc/aliases
root: xxx <-加上這一行
運行newaliases
命令使之生效:
# newaliases
此後發給root的郵件都會轉發給xxx用戶。
二、VPS用:
軟件包
# pkg install nginx-lite
# pkg install py38-certbot
# pkg install py38-sqlite3
# pkg install rsync
各種配置
# vi /etc/rc.conf
firewall_enable="YES"
firewall_script="/usr/local/etc/ipfw.rules"
nginx_enable="YES"
ntpdate_enable="YES"
ntpdate_flags="-b time.google.com"
# vi /etc/sysctl.conf
net.inet.ip.fw.verbose_limit=5
SSH相关
先確保VPS上已開啟了sshd:
VPS # vi /etc/rc.conf
sshd_enable="YES"
在本地生成一對密鑰:
$ ssh-keygen -t rsa -b 4096
複製公鑰到VPS:
$ ssh-copy-id -i ~/.ssh/id_rsa.pub user@ip
或:
$ cat ~/.ssh/id_rsa.pub | ssh user@ip "mkdir -m 700 ~/.ssh; cat >> ~/.ssh/authorized_keys; chmod 600 ~/.ssh/authorized_keys"
修改SSH端口號並禁止密碼登錄,只允許密鑰登錄,只允許指定用戶登錄:
VPS # vi /etc/ssh/sshd_config
PermitRootLogin without-password
PasswordAuthentication no
ChallengeResponseAuthentication no
PubkeyAuthentication yes
Port xxx
AllowUsers user1 user2 ...
重啟sshd:
VPS # service sshd restart
編輯本地文件~/.ssh/config
並加入以下內容:
Host 名稱(如:freebsd)
HostName IP地址
User 用戶名(如:root)
Port 端口號(如:22)
IdentityFile 你的私鑰(如:~/.ssh/id_rsa)
用SSH連接VPS:
$ ssh freebsd(上面Host部分的名稱)
更改私钥passphrase:
$ ssh-keygen -p -f ~/.ssh/id_rsa
Categories: [FreeBSD]