Note

Some shell configurations can be found at Shell.

Install nesserary packages

# Normal packages
apt update && apt install wget curl tmux zsh git unzip zsh tree nano vim htop zip fuse fzf bat -y
 
# 3rd Packages
## Tmux & Zsh
curl -fsSL git.io/oh-my-tmux.sh | bash
 
# Gotop
curl -fsSL git.io/gotop.sh | bash
 
# Aria2
wget -N git.io/aria2.sh -O ~/aria2.sh && chmod +x ~/aria2.sh
 
## Tmate
curl -fsSL git.io/tmate.sh | bash
 
## eza
wget -c https://github.com/eza-community/eza/releases/latest/download/eza_x86_64-unknown-linux-gnu.tar.gz -O - | tar xz
chmod +x eza
mv eza /usr/local/bin/eza

Change Debian Apt Sources

vim /etc/apt/sources.list
-----
deb https://mirrors.bfsu.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
deb https://mirrors.bfsu.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
deb https://mirrors.bfsu.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
deb https://mirrors.bfsu.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
-----

Install Docker

# Install Docker on Chinese mainland
## export DOWNLOAD_URL="https://mirrors.bfsu.edu.cn/docker-ce"
curl -fsSL https://get.docker.com/ | sh

User configuration

# Enable root user login
vim /etc/ssh/sshd_config
-----
PermitRootLogin yes
-----
 
# Restart ssh service
systemctl restart ssh
systemctl restart sshd
 
# Create user named `suling`
useradd -m -G sudo -s /usr/bin/zsh <username>
echo "<username>:<password>" | chpasswd
 
# SSH configs
echo '<username> ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/<username>
chmod 440 /etc/sudoers.d/<username>
 
# Timezone Settings
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

Enable BBR

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
lsmod | grep bbr