ssh-keygen -t rsa -b 4096 -C "[email protected]"
...
Enter a file in which to save the key (/home/you/.ssh/algorithm): <key_name>
Enter passphrase (empty for no passphrase): [输入密码]
Enter same passphrase again: [再次输入密码]
cat ~/.ssh/<key_name>.pub
Title : 为新密钥添加描述性标签 Key : 粘贴COPY的公钥内容
cd ~/.ssh
# 设置访问权限
chmod 600 <key_name>
# 生成SSH配置文件
cat > config << EOF
Host github.com
Hostname ssh.github.com
Port 443
IdentityFile ~/.ssh/<key_name>
UpdateHostKeys yes
Compression yes
User git
EOF
ssh -T [email protected]
...
Are you sure you want to continue connecting (yes/no)? <yes>
...
Hi <username>! You've successfully authenticated, but GitHub does not provide shell access.
如果找不到软件,直接下载安装 或 更换软件源 Linux 版本库管理
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
systemctl stop 'postfix@*' ; systemctl disable 'postfix@\x2a' ; apt purge -y postfix
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
# 创建服务
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
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
systemctl enable --now systemd-resolved
# 将系统的 DNS 配置文件链接到 systemd-resolved 管理的动态文件上,这样它就会自动更新。
ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
resolvectl status
systemctl stop networking
systemctl disable networking
apt remove ifupdown
reboot
# 修改命令行提示符
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
# 允许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