这份命令笔记涵盖了 Ubuntu 服务器管理的各个方面,包括系统更新、用户管理、安全配置、网络诊断等,适合日常使用与技术分享。
系统管理命令
bash
sudo apt update && sudo apt upgrade -y # 更新系统
sudo reboot # 重启服务器
sudo shutdown now # 立刻关机
sudo shutdown -r now # 立刻重启
sudo shutdown -h +10 # 10分钟后关机
sudo shutdown -c # 取消定时关机
sudo poweroff # 关机
sudo timedatectl set-timezone Asia/Shanghai # 设置时区为上海
用户管理
bash
sudo adduser myuser # 创建新用户
sudo usermod -aG sudo myuser # 将用户添加到 sudo 组(授予管理员权限)
sudo passwd myuser # 修改用户密码
SSH 安全配置
编辑配置文件 /etc/ssh/sshd_config
,常见安全优化建议如下:
text
Port 2222 # 修改 SSH 默认端口(需在防火墙中放行)
PermitRootLogin no # 禁止 root 用户远程登录
PasswordAuthentication no # 禁止密码登录,仅允许密钥登录
修改完后重启 SSH 服务:
bash
sudo systemctl restart ssh
UFW 防火墙管理
基础操作
bash
sudo ufw enable # 启用防火墙
sudo ufw disable # 禁用防火墙
sudo ufw status # 查看状态
默认策略
bash
sudo ufw default deny incoming # 默认拒绝所有入站流量
sudo ufw default allow outgoing # 默认允许所有出站流量
放通常用端口
bash
sudo ufw allow 2222/tcp # 放通自定义 SSH 端口
sudo ufw allow ssh # 放通默认 SSH(22)
sudo ufw allow http # 放通 HTTP(80)
sudo ufw allow https # 放通 HTTPS(443)
控制指定 IP
bash
sudo ufw allow from 192.168.1.100 # 允许该 IP 所有端口
sudo ufw deny from 1.2.3.4 # 拒绝该 IP 所有请求
其他管理命令
bash
sudo ufw logging on # 启用日志记录
sudo ufw status numbered # 查看带编号的规则列表
sudo ufw delete allow 80 # 删除规则
sudo ufw reset # 重置防火墙(慎用)
Fail2ban(暴力破解防护)
bash
sudo apt install fail2ban -y # 安装 fail2ban
sudo systemctl enable fail2ban # 设置开机启动
sudo systemctl start fail2ban # 启动服务
网络相关命令
bash
ping google.com # 测试网络连通性
curl ifconfig.me # 查看公网 IP
ip a # 查看本机 IP 地址
netstat -tuln # 查看端口(需安装 net-tools)
ss -tuln # 查看监听端口(推荐使用)
服务管理(Systemd)
bash
sudo systemctl start nginx # 启动服务
sudo systemctl stop nginx # 停止服务
sudo systemctl restart nginx # 重启服务
sudo systemctl status nginx # 查看服务状态
sudo systemctl enable nginx # 设置服务开机启动
sudo systemctl disable nginx # 取消服务开机启动
Nginx 快速部署 & HTTPS 配置
安装与启动
bash
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
添加站点配置(示例)
bash
sudo nano /etc/nginx/sites-available/example
启用站点配置
bash
sudo ln -s /etc/nginx/sites-available/example /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
配置 HTTPS(使用 Certbot)
bash
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com
系统清理
bash
sudo apt autoremove -y # 删除无用软件包