插件窝 干货文章 linux服务器需要安装什么

linux服务器需要安装什么

sudo install bash apt 908    来源:    2025-04-17

在Linux服务器上需要安装的软件和服务取决于具体的用途(如Web服务器、数据库服务器、文件服务器等),但以下是一些常见的基础组件和推荐工具,适用于大多数场景:


1. 系统基础工具

  • 必要工具

    • vim / nano:文本编辑器(默认可能只有vi)。
    • curl / wget:下载文件或测试HTTP请求。
    • git:代码版本控制。
    • htop / top:进程监控工具(比top更直观)。
    • net-tools / iproute2:网络工具(如ifconfignetstat,现代系统用ip命令)。
    • lsof:查看文件/端口占用情况。
    • tmux / screen:终端多会话管理(防止SSH断开导致任务终止)。
    • ufw / firewalld:防火墙配置工具。
    • unzip / tar:解压工具。
  • 安装命令(以Ubuntu/Debian为例)

    sudo apt update && sudo apt install -y vim curl wget git htop net-tools lsof tmux ufw unzip
    

2. 安全加固

  • 基础安全
    • 更新系统:sudo apt update && sudo apt upgrade -y(或yum)。
    • 配置防火墙(如ufw): bash sudo ufw allow 22/tcp # 开放SSH端口 sudo ufw enable
    • 禁用root登录:修改/etc/ssh/sshd_config,设置 PermitRootLogin no
    • 配置SSH密钥登录:更安全的方式替代密码登录。
    • 安装fail2ban:防止暴力破解攻击。 bash sudo apt install -y fail2ban

3. 监控与日志

  • 系统监控
    • nmon:实时系统性能监控。
    • glances:综合监控工具(CPU/内存/磁盘/网络)。
    • prometheus + grafana(高级监控方案)。
  • 日志管理
    • journalctl:查看systemd日志。
    • logrotate:日志轮转工具(防止日志占满磁盘)。

4. 服务器角色相关软件

根据服务器用途选择安装:

A. Web服务器

  • Nginx/Apachebash sudo apt install -y nginx # 或 apache2
  • PHP(可选): bash sudo apt install -y php-fpm php-mysql
  • Node.js(可选): bash curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - sudo apt install -y nodejs

B. 数据库服务器

  • MySQL/MariaDBbash sudo apt install -y mariadb-server sudo mysql_secure_installation # 安全配置
  • PostgreSQLbash sudo apt install -y postgresql postgresql-contrib
  • Redis(内存数据库): bash sudo apt install -y redis-server

C. 文件服务器

  • Samba(Windows共享): bash sudo apt install -y samba
  • NFS(Linux间共享): bash sudo apt install -y nfs-kernel-server

D. 容器与虚拟化

  • Dockerbash curl -fsSL https://get.docker.com | sh sudo usermod -aG docker $USER # 允许当前用户管理Docker
  • Kubernetes(如用于集群管理)。

5. 备份工具

  • rsync:增量备份。
  • borgbackup:去重压缩备份。
  • cron:定时任务(如定期备份)。

6. 开发环境(可选)

  • Pythonbash sudo apt install -y python3 python3-pip
  • Java(如OpenJDK): bash sudo apt install -y openjdk-11-jdk

7. 网络与代理

  • OpenVPN/WireGuard:VPN服务。
  • Nginx反向代理:用于多服务端口转发。

总结建议

  1. 最小化安装:根据实际需求安装,避免不必要的服务(减少攻击面)。
  2. 定期更新:使用cronunattended-upgrades自动打补丁。
  3. 日志监控:配置日志轮转和报警(如磁盘空间不足)。

示例初始化脚本(Ubuntu):

#!/bin/bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y vim curl git htop ufw fail2ban
sudo ufw allow 22/tcp && sudo ufw enable

根据你的具体场景(如企业级应用、个人项目等),可以进一步调整配置。如果需要更具体的方案,请提供服务器用途!