当我拿到一台全新 Linux 服务器我会做什么 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
samin
V2EX    程序员

当我拿到一台全新 Linux 服务器我会做什么

  •  
  •   samin 2023-02-07 11:22:45 +08:00 14140 次点击
    这是一个创建于 977 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1. 修改网卡配置为固定 ip
    2. 安装 openssh-server 并打开 root 远程访问配置
    3. 安装 oh-my-zsh 配置主题,安装自动补全、语法高亮插件
    4. 修改 vim 配置,增加行数显示
    5. 安装 docker 环境,增加 docker-compose 插件

    各位还会干些啥

    via blog

    113 条回复    2023-02-08 11:31:36 +08:00
    1  2  
    opentrade
        1
    opentrade  
       2023-02-07 11:31:42 +08:00
    vim
    nrtEBH
        2
    nrtEBH  
       2023-02-07 11:33:08 +08:00   4
    alias vi = ‘vim’
    kaiki
        3
    kaiki  
       2023-02-07 11:36:16 +08:00   10
    比如把 IP 发到 V 站做个压测?
    loading
        4
    loading  
       2023-02-07 11:39:07 +08:00
    如果是局域网,那么我会装上 avahi ,这样我可以用 $hostname.local 域名直接访问
    xyjincan
        5
    xyjincan  
       2023-02-07 11:39:24 +08:00   6
    把 ssh 公钥加进去,关闭密码访问
    AoEiuV020CN
        6
    AoEiuV020CN  
       2023-02-07 11:39:26 +08:00   1
    我会有个记事本记录新服务器准备工作和用到的命令,每次都复制粘贴运行,
    hostnamectl,
    locale-gen,
    useradd,
    install git curl,
    获取 bash 和 vim 之类配置文件,
    ssh authorized_keys,
    clash,
    mutt smtp, 服务器报警发邮件到个人邮箱,
    mount webdav 获取我的 Let’s Encrypt https 证书,
    slowman
        7
    slowman  
       2023-02-07 11:40:18 +08:00   2
    DHCP DNS 先搞清楚,最好配置 DOH ,min ttl 限制
    yabs 等全家桶脚本跑一遍,性能,网速,区域解锁,黑名单心里有数
    看看邻居都是干啥的,心里有数
    zerotier 等一堆 apt install
    debuggerx
        8
    debuggerx  
       2023-02-07 11:45:43 +08:00
    sudo apt install vim htop avahi-daemon

    1~3 三条不会做
    anonymous2351d00
        9
    anonymous2351d00  
       2023-02-07 11:47:46 +08:00   2
    poweroff
    SgtPepper
        10
    SgtPepper  
       2023-02-07 11:49:04 +08:00
    上 v2 问
    totoro625
        11
    totoro625  
       2023-02-07 11:51:07 +08:00   3
    1 、开启 root 登录
    2 、拉取公钥并禁用密码登录
    3 、安装 docker 、nano 、screen 、htop 、rclone
    4 、配置 crontab 定期拉取 OSS 配置文件
    5 、docker 安装 SS\FRP\tailscale\zerotier\watchtower
    6 、配置域名
    Dk2014
        12
    Dk2014  
       2023-02-07 11:52:18 +08:00 via Android
    sudo rm -rf /
    reboot
    Chaconne
        13
    Chaconne  
       2023-02-07 11:56:08 +08:00 via iPhone
    我是先搭个 v2ray 飞机场
    beyondsoft
        14
    beyondsoft  
       2023-02-07 12:01:40 +08:00
    首先当然是看看机器的配置
    free -g
    lsblk -T
    lscpu
    icyalala
        15
    icyalala  
       2023-02-07 12:03:28 +08:00
    sudo apt/yum install sl
    sl
    boris1993Jr
        16
    boris1993Jr  
       2023-02-07 12:06:41 +08:00 via iPhone   1
    添加 ssh 公钥,禁止密码登录
    装 docker ,装 portainer agent ,连上 portainer 主控机
    docker 装 tailscale
    hgc81538
        17
    hgc81538  
       2023-02-07 12:08:47 +08:00 via iPhone   1
    1. 更改, ntp 生效
    2. 打丁
    3. Reboot
    mrgeneral
        18
    mrgeneral  
       2023-02-07 12:19:14 +08:00
    反了呀,先有目的才有行为,我有台机器只装了 docker ,vim 都没,因为自带的是 vi 。
    anubu
        19
    anubu  
       2023-02-07 12:26:02 +08:00
    自己内网的话只做 1 、2 、5.

    - 借助内网 DHCP 和 DNS ,放弃人脑 IPAM ,固定 IP 可以不做了,hostnametl 加 dhcp ,主机名访问
    - docker remote api 加 docker context ,基本上没有在 Linux 主机本地文本编辑的需求了,默认 vi 凑合够用了
    cjpjxjx
        20
    cjpjxjx  
       2023-02-07 12:26:14 +08:00 via iPhone
    update
    duke807
        21
    duke807  
       2023-02-07 12:31:08 +08:00 via Android
    改装 gentoo
    jimmy980352
        22
    jimmy980352  
       2023-02-07 12:33:26 +08:00
    更新、修改 ssh 、docker
    miv
        23
    miv  
       2023-02-07 12:34:41 +08:00 via iPhone   1
    安装一个 sl ,跑一下
    iLoveSS
        24
    iLoveSS  
       2023-02-07 12:36:17 +08:00
    @miv sl is short for ..?
    miv
        25
    miv  
       2023-02-07 12:37:15 +08:00 via iPhone
    @iLoveSS 就是一个跑火车的命令,玩玩
    jasonyang9
        26
    jasonyang9  
       2023-02-07 12:44:24 +08:00 via Android
    配置好 ssh 密钥后 ansible 一把梭
    zooo
        27
    zooo  
       2023-02-07 12:46:00 +08:00
    你会在 V2EX 发个帖子
    limi58
        28
    limi58  
       2023-02-07 12:46:23 +08:00   1
    第一个应该是安装 tmux
    itechify
        29
    itechify  
    PRO
       2023-02-07 12:50:48 +08:00 via Android
    @iLoveSS 小火车,有点意思
    lovelylain
        30
    lovelylain  
       2023-02-07 12:52:13 +08:00 via Android
    修改 ssh ,安装 docker ,把常用 ubuntu 容器打包在新机器上运行
    ccagml
        31
    ccagml  
       2023-02-07 12:55:10 +08:00 via Android
    跑个测速脚本
    liuxianzhuo
        32
    liuxianzhuo  
       2023-02-07 13:10:19 +08:00 via Android   13
    开 ssh ,让 @defunct9 上去看看
    baobao1270
        33
    baobao1270  
       2023-02-07 13:11:51 +08:00
    Server Install SOP (Ubuntu)

    sudo apt update
    sudo apt upgrade -y
    sudo apt install -y ufw git zip unzip python3-venv python3-pip bash-completion vim sudo curl wget tree iftop iotop bpytop ufw
    mkdir -p ~/.ssh

    curl https://github.com/baobao1270.keys -o ~/.ssh/authorized_keys
    sudo sed -i "/^#HostKey/s/^#//g" /etc/ssh/sshd_config
    sudo sed -i "/^#ListenAddress 0.0.0.0/s/^#//g" /etc/ssh/sshd_config
    sudo sed -i "/^#PubkeyAuthentication yes/s/^#//g" /etc/ssh/sshd_config
    sudo sed -i "s/^#PasswordAuthentication yes$/PasswordAuthentication no/g" /etc/ssh/sshd_config

    sudo sed -i "/^#force_color_prompt=yes/s/^#//g" /etc/skel/.bashrc
    cp /etc/skel/.bashrc ~/
    sudo cp /etc/skel/.bashrc /root

    echo 'net.ipv6.conf.default.disable_ipv6 = 1' | sudo tee -a /etc/sysctl.conf
    echo 'net.ipv6.conf.all.disable_ipv6 = 1' | sudo tee -a /etc/sysctl.conf
    echo 'net.ipv6.conf.lo.disable_ipv6 = 1' | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
    sudo sed -i "s/^IPV6=yes$/IPV6=no/g" /etc/default/ufw
    sudo ufw allow openssh
    sudo ufw enable
    Makoto
        34
    Makoto  
       2023-02-07 13:13:30 +08:00
    安装一个 nox 版本 emacs,配置一下,然后该干嘛干嘛
    abc0123xyz
        35
    abc0123xyz  
       2023-02-07 13:15:48 +08:00
    安装 360 ,电脑管家,金山毒霸( dog )
    ltruntu
        36
    ltruntu  
       2023-02-07 13:21:05 +08:00
    这不装个 360 ? 要不然不安全 要么 rrm -rf / (多打个 r 防止新手)
    Tink
        37
    Tink  
    PRO
       2023-02-07 13:21:37 +08:00
    rm -rf / 测试磁盘性能
    yulgang
        38
    yulgang  
       2023-02-07 13:22:42 +08:00
    share 一下密码,让我来告诉你我会干什么
    chioplkijhman
        39
    chioplkijhman  
       2023-02-07 13:24:04 +08:00
    yulgang
        40
    yulgang  
       2023-02-07 13:24:36 +08:00
    如果你是新手,dd 备份一下。
    1 、2 、3 、4 、5 都不会做
    0fU7PIOlMD4mp0r4
        41
    0fU7PIOlMD4mp0r4  
       2023-02-07 13:28:49 +08:00
    @1423 yabs 全家桶脚本是什么?
    0fU7PIOlMD4mp0r4
        42
    0fU7PIOlMD4mp0r4  
       2023-02-07 13:29:23 +08:00
    @totoro625 docker 安装 SS\FRP\tailscale\zerotier\watchtower, 出个教程呗
    zjsxwc
        43
    zjsxwc  
       2023-02-07 13:29:24 +08:00
    rm -rf /
    licoycn
        44
    licoycn  
       2023-02-07 13:37:33 +08:00
    alias ll='ls -ahl'
    40kecedwixyCdM81
        45
    40kecedwixyCdM81  
       2023-02-07 13:41:53 +08:00
    先把公钥丢进去,再装个 zsh+oh my zsh 改个主题
    totoro625
        46
    totoro625  
       2023-02-07 13:41:59 +08:00
    @iGuChin #42 docker run 没啥教程的,跑起来就行
    35aZ4P8mT576683q
        47
    35aZ4P8mT576683q  
       2023-02-07 13:43:24 +08:00   1
    gearfox
        48
    gearfox  
       2023-02-07 13:48:46 +08:00
    @Dk2014 一点都不好笑
    zjj19950716
        49
    zjj19950716  
       2023-02-07 13:49:39 +08:00
    ls
    XiaoWangZhanzz
        50
    XiaoWangZhanzz  
       2023-02-07 13:57:46 +08:00
    拿去看看市场价格
    dobelee
        51
    dobelee  
       2023-02-07 14:00:08 +08:00
    装个探针,等到期系统回收。
    hefish
        52
    hefish  
       2023-02-07 14:03:41 +08:00   1
    rm -rf /
    cslive
        53
    cslive  
       2023-02-07 14:09:01 +08:00
    apt update
    apt upgrade
    tianshunovel2
        54
    tianshunovel2  
       2023-02-07 14:18:20 +08:00 via Android
    装个 bt
    bitkuang8
        55
    bitkuang8  
       2023-02-07 14:26:34 +08:00
    @Dk2014 大佬,执行完第一条,执行第二条就出错了
    Traceback (most recent call last):
    File "/usr/lib/command-not-found", line 28, in <module>
    from CommandNotFound import CommandNotFound
    File "/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py", line 19, in <module>
    from CommandNotFound.db.db import SqliteDatabase
    File "/usr/lib/python3/dist-packages/CommandNotFound/db/db.py", line 6, in <module>
    apt_pkg.init()
    apt_pkg.Error: W:Unable to read /etc/apt/apt.conf.d/ - DirectoryExists (2: No such file or directory), E:Error reading the CPU table
    bjfane
        56
    bjfane  
    PRO
       2023-02-07 14:36:31 +08:00
    服务器上 没装 oh my zsh
    lessMonologue
        58
    lessMonologue  
       2023-02-07 14:55:12 +08:00
    问下各位大佬,由于 centos7 不支持 nvim-0.8 版本,怎么快速使用 nvim ?
    Contextualist
        59
    Contextualist  
       2023-02-07 15:28:45 +08:00
    @lessMonologue 我 centos7 + glibc 1.17 可以跑官方的 AppImage 。刚出 0.8.0 时因为 GitHub Actions 他们一度去掉了对旧 glibc 的支持,后来又加回来了。
    worldquant
        60
    worldquant  
       2023-02-07 15:30:57 +08:00
    先测试下 vps 性能
    PlayByMyself
        61
    PlayByMyself  
       2023-02-07 15:42:42 +08:00
    curl -sSf https://dotfiles.yejun.me/install.sh | bash -s -- server
    flush9f
        62
    flush9f  
       2023-02-07 15:51:23 +08:00
    在路由器上绑定 MAC ,然后设置 DHCP 分配固定 IP ,然后开 ssh 加公钥,再开个无密码 su 。
    wagsoft
        63
    wagsoft  
       2023-02-07 15:57:16 +08:00
    为什么要用 linux
    liubaicai
        64
    liubaicai  
       2023-02-07 16:00:41 +08:00   1
    alias cd = ‘rm -rf’
    Zy143L
        65
    Zy143L  
       2023-02-07 16:01:43 +08:00 via Android
    先 d 一遍镜像
    ltkun
        66
    ltkun  
       2023-02-07 16:05:27 +08:00 via Android
    干嘛要 root 远程 普通用户上去 sudo 不更合适点
    我会安装 screen 或者 tmux 这种 下次登录还可以继续 没有 nano 就安一个 vi 用着不习惯 其他看服务器要了干嘛再做打算
    billytom
        67
    billytom  
       2023-02-07 16:10:51 +08:00
    @ltkun 想请教下,如果改用其它用户登陆再 su ,然后 path 都没有了,连运行个 reboot 都要 /sbin/reboot ,这里是有什么窍门吗?(如果开机直接设 root 账号登陆就不会有这样的问题)。而如果设置了其它用户,哪怕后来在 sshd 里改运行 root 登陆,一样会出现 path 不完整
    waltcow
        68
    waltcow  
       2023-02-07 16:15:10 +08:00
    df -h
    Longerrrr
        69
    Longerrrr  
       2023-02-07 16:51:40 +08:00
    dotbot install!
    MoeMoesakura
        70
    MoeMoesakura  
       2023-02-07 17:05:35 +08:00
    @kaiki 这种事还是 hostloc 的 mjj 干的多
    MoeMoesakura
        71
    MoeMoesakura  
       2023-02-07 17:06:55 +08:00
    Ubuntu 的话先删 snap 比较清爽
    shellic
        72
    shellic  
       2023-02-07 17:23:56 +08:00
    那必然是禁用密码登录
    zehuda
        73
    zehuda  
       2023-02-07 17:30:32 +08:00
    neofetch
    woshinide300yuan
        74
    woshinide300yuan  
       2023-02-07 17:56:12 +08:00
    锁全部端口访问,然后打开宝塔官网
    newmlp
        75
    newmlp  
       2023-02-07 18:06:20 +08:00
    重装成 Windows 打游戏
    LXGMAX
        76
    LXGMAX  
       2023-02-07 18:17:22 +08:00
    用脚本测网速
    测本地电脑到它的延迟
    encro
        77
    encro  
       2023-02-07 18:26:38 +08:00
    没有人格式化,装 windows
    kmvvv
        78
    kmvvv  
       2023-02-07 18:42:15 +08:00
    替换 ls 安装 exa
    cktsun
        79
    cktsun  
       2023-02-07 19:45:07 +08:00 via Android
    更改 mirror, sudo apt-get update, sudo apt-get upgrade -y
    javlib
        80
    javlib  
       2023-02-07 19:49:55 +08:00
    第二条是不是搞错了,应该是禁止 root 远程登录吧?
    lzuntalented
        81
    lzuntalented  
       2023-02-07 19:59:34 +08:00
    先把 apt 源切换到清华镜像,不然没法安装软件,墙好厚
    leavelet
        82
    leavelet  
       2023-02-07 20:34:37 +08:00
    @lzuntalented 确实,我一般切北大源,清华源最近太挤了
    yaott2020
        83
    yaott2020  
       2023-02-07 20:38:18 +08:00 via Android
    apt update
    apt install sudo
    sudo passwd
    Maysec
        84
    Maysec  
       2023-02-07 20:38:34 +08:00
    问我学长该干嘛 @outtime
    HelloAmadeus
        85
    HelloAmadeus  
       2023-02-07 21:11:25 +08:00
    先把 shell 体验提升一下
    https://github.com/hanke0/dotfiles
    lin07hui
        86
    lin07hui  
       2023-02-07 21:13:00 +08:00
    服务器的 ssh 添加电脑 ssh key 。电脑 vs code Remote 添加服务器配置,点“在新窗口链接...”
    imv2er
        87
    imv2er  
       2023-02-07 21:20:26 +08:00
    装个 windows
    ltkun
        88
    ltkun  
       2023-02-07 21:36:41 +08:00 via Android
    @billytom 直接 bashrc 里面把 path 都设置好 建议加入 wheel 组 sudo 一般也不用 su
    angelface
        89
    angelface  
       2023-02-07 21:43:09 +08:00
    omz 还是不太建议。
    先把 cer 登录搞上。
    timothyye
        90
    timothyye  
       2023-02-07 21:51:14 +08:00 via Android
    sudo shutdown -h now
    smilenceX
        91
    smilenceX  
       2023-02-07 21:54:54 +08:00
    重装系统。
    在我看来,预先装好的系统并不是 100%可信。
    LxnChan
        92
    LxnChan  
       2023-02-07 21:57:18 +08:00
    @kaiki 我看一下啊,我服务器 IP 是 127.0.0.1
    LindsayZhou
        93
    LindsayZhou  
       2023-02-07 21:57:55 +08:00
    1. 主机名,新用户
    2. zsh 和我的 zshrc zshenv zshalias (不是 ohmyzsh ,自己手写的)
    3. ssh 配置,改端口,禁密码
    4. 我的 gpg 公钥(备份加密用)
    5. 我的 iptables 规则,默认留下 80 443 ssh 端口,其他全禁
    6. 装 node-exporter 加到监控里
    7. 装 ipset 设置 ip 黑名单,从 blackip.ustc.edu.cn 拉的 (可选)
    8. 跑了服务就把备份弄好 (可选)

    2 在我的 dotfile 仓库 git clone ssh://git.lin.moe/dotfiles
    7 、8 的脚本和 systemd service/timer 在 ssh://git.lin.moe/systools ,没写说明,脚本简单,有需要自己看
    huieh
        94
    huieh  
       2023-02-07 22:05:42 +08:00
    有模板。。拉下来什么都配置好了
    davis2023
        95
    davis2023  
       2023-02-07 22:08:28 +08:00
    自己信任的系统先部署一遍
    SAGAN
        96
    SAGAN  
       2023-02-07 22:27:00 +08:00
    开启 root 用户。

    ssh 启用密码登录。(密码设为 32 位随机字符)

    禁用防火墙、禁用 selinux 。

    给服务器取个名字设为 hostname ,在自己域名的管理界面加一条 hostname.s.example.com 的 DNS 记录指向服务器 IP ,这样就不用记服务器 IP 了。

    ( CentOS / RHEL 系)删除 .bashrc 里默认的 alias rm="rm -i" 和 alias mv="mv -i"
    cctv6
        97
    cctv6  
       2023-02-07 22:37:26 +08:00
    一般第一件事是执行 update ,把系统更新一下,然后再开始装上几个常用的工具。再之后的操作看具体需求。
    yulihao
        98
    yulihao  
       2023-02-07 22:43:00 +08:00
    apt update
    然后改密码,没 root 用户会先开 root 用户
    techstay
        99
    techstay  
       2023-02-07 22:43:35 +08:00
    1. ssh-copy-id 添加公钥允许免密码 SSH 登录
    1. 更新系统
    1. 用 zim 配置 zsh 环境
    1. 添加 docker
    1. frp 内网穿透

    现在的话,应该还会部署一个 vpn 中转,传文件和局域网玩游戏
    fzlqr091314
        100
    fzlqr091314  
       2023-02-07 22:45:34 +08:00
    装 centos7-gnome 、修改本地镜像源、yum install gcc make 、yum install kernel kernel-devel 、 装网卡驱动、换镜像源、装宝塔、建站
    1  2  
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     987 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 23:09 PVG 07:09 LAX 16:09 JFK 19:09
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86