Avatar

Organizations

1 results for Setup
  • 初始化配置

    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 重启

    reboot
    

    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 配置

    CLI bash ssh top linux Created Mon, 17 Jan 2022 11:07:07 +0800