Deploy 綜合版
網路
如果顯卡有被偵測到,系統安裝過程中可能會幫你生成檔案(如01-netcfg.yaml、50-cloud-init.yaml),如果沒有就自己建。
檔名沒有關係,但建議前面帶數字表示套用的順序。
/etc/netplan/xx-xxx.yaml
network:
version: 2
renderer: networkd
ethernets:
ens160:
dhcp4: false
addresses:
- 192.168.1.100/24
nameservers:
addresses:
- 192.168.1.3
routes:
- to: default
via: 192.168.1.254
這步驟做好理當可以改用ssh進來了。
時間
timedatectl set-timezone 'Asia/Taipei'
## check
date
先更新及安裝想要裝的東西
apt update && apt upgrade
sudo apt install ntp
ssh
如果確定要關閉root或使用密碼登入。
/etc/ssh/sshd_config
PermitRootLogin no
PasswordAuthentication no
# restart ssh
sudo systemctl restart sshd
Firewall
看自己想要開什麼,預設都是關的,所以enable後只有allow的可以過。
sudo ufw allow ssh
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable
Github
# 生一組ssh key
ssh-keygen -t ed25519 -C "xxx@gmail.com"
# 複製到github後台
cat ~/.ssh/id_ed25519.pub
# test
ssh -T git@github.com
nginx
sudo apt install nginx
sudo ufw allow 'Nginx Full'
# 自簽ssl
sudo mkdir /etc/nginx/ssl
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt
# 加在/etc/nginx/sites-available/default 的server區塊中
ssl_certificate /etc/nginx/ssl/nginx.crt;
ssl_certificate_key /etc/nginx/ssl/nginx.key;
# check
sudo nginx -t
# restart
sudo nginx -s reload
sudo systemctl restart nginx