初始化配置
1.软件更新
软件库管理
2. 配置时间
apt install -y systemd-timesyncd
# 设置时区
timedatectl set-timezone Asia/Shanghai
# 启动NTP服务
timedatectl set-ntp true
; /etc/systemd/timesyncd.conf
[Time]
NTP=ntp.tuna.tsinghua.edu.cn
FallbackNTP=0.debian.pool.ntp.org 1.debian.pool.ntp.org
# 在LXC、Docker 或某些 VPS 环境中
dpkg-reconfigure tzdata
3. 关闭邮件服务
systemctl stop 'postfix@*' ; systemctl disable 'postfix@\x2a' ; apt purge -y postfix
4. 配置网络
4.1 配置无线(WiFi)
4.1.1 配置wpa_supplicant
apt install -y wpa_supplicant
; /etc/wpa_supplicant/wlp2s0.conf
p2p_disabled=1
network={
ssid="<ssid>"
psk="<pwd>"
}
# 测试配置文件
wpa_supplicant -c /etc/wpa_supplicant/wlp2s0.conf -i wlp2s0 -B
# 重启wpa_supplicant服务
systemctl enable wpa_supplicant
systemctl start wpa_supplicant
# 编辑wpa_supplicant服务
systemctl edit wpa_supplicant
### Editing /etc/systemd/system/wpa_supplicant.service.d/override.conf
### Anything between here and the comment below will become the contents of the drop-in file
[Service]
ExecStart=
ExecStart=/usr/sbin/wpa_supplicant -c /etc/wpa_supplicant/wlp2s0.conf -i wlp2s0
Type=simple
Restart=on-failure
RestartSec=5
TimeoutStartSec=180
### Edits below this comment will be discarded
......
systemctl daemon-reload
systemctl restart wpa_supplicant
4.1.2 关闭无线网卡电源管理
# 创建服务
tee /etc/systemd/system/wifi-powersave.service << 'EOF'
[Unit]
Description=Disable WiFi Power Saving
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/sbin/iwconfig wlp2s0 power off
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
EOF
# 启动服务
systemctl enable wifi-powersave.service
systemctl start wifi-powersave.service
4.2 配置systemd-networkd
apt install -y systemd-networkd systemd-resolved
; 此处参考/etc/network/interfaces文件里的配置
; /etc/systemd/network/10-lo.network
[Match]
Name=lo
[Network]
# 启用链路本地地址(IPv4 和 IPv6)
LinkLocalAddressing=yes
IPv6LinkLocalAddressGenerationMode=stable-privacy
[Address]
Address=127.0.0.1/8
[Address]
Address=::1/128
; 此处参考/etc/network/interfaces文件里的配置
; 无线网卡
; /etc/systemd/network/20-wireless.network
[Match]
Name=wlp2s0
[Network]
Address=192.168.1.94/24
Gateway=192.168.1.1
DNS=192.168.1.6
; 禁用IPv6
LinkLocalAddressing=no
IPv6AcceptRA=no
# 重启systemd-networkd服务
systemctl enable systemd-networkd
systemctl start systemd-networkd
# 编辑systemd-networkd服务
systemctl edit systemd-networkd
### Editing /etc/systemd/system/systemd-networkd.service.d/override.conf
### Anything between here and the comment below will become the contents of the drop-in file
[Unit]
After=wpa_supplicant.service
Wants=wpa_supplicant.service
### Edits below this comment will be discarded
......
systemctl daemon-reload
systemctl restart systemd-networkd
4.3 配置systemd-resolved
systemctl enable --now systemd-resolved
# 将系统的 DNS 配置文件链接到 systemd-resolved 管理的动态文件上,这样它就会自动更新。
ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
resolvectl status
4.4 关闭networking
systemctl stop networking
systemctl disable networking
apt remove ifupdown
4.5 重启
5. 配置Shell
# 修改命令行提示符
echo "PS1='\[\e[36;40m\][\D{%Y-%m-%d} \A] \[\e[0m\] \[\e[35;40m\]\w\[\e[0m\]\n\[\e[33;40m\][\u@\H]\[\e[0m\] \\$ '" >> ~/.bashrc \
&& . ~/.bashrc
# 打开自定义命令
sed -E -i.bak -e '/(export|eval|alias (ls|ll|l|rm|cp|mv))/s/^# //' ~/.bashrc \
&& . ~/.bashrc
6. 配置 sshd
# 允许root密码登录
# 允许密码登录
# 解决SSH自动断开问题
sed -E -i.bak \
-e 's/#(Port 22)/\1/' \
-e 's/#(PermitRootLogin) prohibit-password/\1 yes/' \
-e 's/#(PubkeyAuthentication yes)/\1/' \
-e 's/#(PasswordAuthentication yes)/\1/' \
-e 's/#(AllowTcpForwarding yes)/\1/' \
-e 's/(X11Forwarding yes)/#\1/' \
-e 's/#(Compression delayed)/\1/' \
-e 's/#(ClientAliveInterval) 0/\1 60/' \
-e 's/#(ClientAliveCountMax) 3/\1 3/' \
/etc/ssh/sshd_config \
&& systemctl restart sshd.service
配置防火墙
iptables 配置