Linux作为服务器操作系统的首选,凭借其开源稳定、安全可控、资源占用低等优势,广泛应用于Web服务、数据库部署、云计算平台等场景,高效管理Linux服务器需要掌握系统初始化、用户权限、服务监控、安全加固等核心技能,以下从实践角度展开详细说明。
系统安装与基础配置
管理Linux服务器首先需完成系统安装,常见发行版如Ubuntu Server、CentOS Stream、Rocky Linux等,需根据业务需求选择(如CentOS适合企业级稳定环境,Ubuntu适合快速迭代场景),安装后需进行基础配置:通过apt update
(Debian/Ubuntu)或yum update
(RHEL/CentOS)更新系统包;配置静态网络IP(编辑/etc/netplan/01-netcfg.yaml
或/etc/sysconfig/network-scripts/ifcfg-eth0
),确保服务器网络可达;设置主机名(hostnamectl set-hostname server01
)以方便集群管理;配置时区(timedatectl set-timezone Asia/Shanghai
)并同步时间(安装ntpdate
工具对接NTP服务器)。
用户与权限管理
Linux的多用户特性要求精细化权限控制,创建用户时,建议用useradd -m -s /bin/bash username
(-m
自动创建家目录,-s
指定登录shell),并通过passwd username
设置强密码;为管理组创建专用组(如groupadd admin
),用usermod -aG admin username
将用户加入组,权限管理核心是rwx
(读/写/执行):文件权限通过chmod 755 file
(所有者读写执行、组和其他用户读)修改,属主通过chown user:group file
调整;关键操作需通过sudo
授权,编辑/etc/sudoers
文件(推荐用visudo
安全编辑),添加username ALL=(ALL) NOPASSWD:/usr/bin/systemctl
,实现免密执行特定命令。安全实践:禁止root远程登录,修改/etc/ssh/sshd_config
中PermitRootLogin no
,重启SSH服务(systemctl restart sshd
)。
服务配置与监控
服务器核心是服务管理,Linux采用systemd初始化系统,服务操作通过systemctl
命令实现:启动服务(systemctl start nginx
)、开机自启(systemctl enable nginx
)、查看状态(systemctl status nginx
)、查看日志(journalctl -u nginx -n 100
),监控服务器状态需关注资源使用:top
/htop
实时查看CPU/内存占用,df -h
检查磁盘空间(重点关注、/var
分区),free -h
查看内存及交换分区,netstat -tuln
监听端口状态(避免端口冲突),日志管理是排查问题的关键,/var/log/
目录下存储系统日志(syslog
)、应用日志(如nginx/access.log
),需配置logrotate
实现日志轮转,避免单个日志文件过大。
安全加固实践
服务器安全是运维重点,需从多维度加固:防火墙配置,使用firewalld
(RHEL/CentOS)或ufw
(Ubuntu),开放必要端口(如80、443、22)并拒绝其他访问(firewall-cmd --permanent --add-service=http
);SSH安全,修改默认端口22为非标准端口(如Port 2222
),禁用密码登录启用密钥认证(PasswordAuthentication no
,PubkeyAuthentication yes
);定期更新系统,安装unattended-upgrades
实现自动安全补丁修复;入侵检测,部署fail2ban
封禁恶意IP(如针对SSH暴力破解);文件权限最小化,重要目录(如/etc
、/root
)设置700,敏感文件(如数据库配置)设置600。
常用管理命令速查表
分类 | 常用命令 | 功能描述 |
---|---|---|
系统信息 | uname -a |
查看内核及系统版本 |
lscpu |
查看CPU详细信息 | |
用户管理 | sudo -l |
查看当前用户的sudo权限 |
id username |
查看用户UID、GID及所属组 | |
服务管理 | systemctl list-units --type=service |
列出所有服务状态 |
journalctl -xe |
查看系统日志(含错误信息) | |
网络管理 | ss -tulnp |
查看端口监听状态及进程PID |
ping -c 4 baidu.com |
测试网络连通性(发送4个包) | |
文件管理 | find / -name "*.log" -mtime +7 |
查找7天前修改的.log文件 |
FAQs
Q1:如何实时查看Linux服务器的Nginx访问日志?
A:可通过tail -f /var/log/nginx/access.log
命令实时追踪日志输出,若需过滤特定内容(如404错误),可结合grep
:tail -f access.log | grep ' 404 '
,使用lnav
(日志查看器)可提供更友好的界面,支持高亮、过滤和搜索功能。
Q2:忘记Linux服务器root密码时如何重置?
A:以GRUB引导菜单重置为例:重启服务器,在GRUB启动界面按e
进入编辑模式,找到linux
或linux16
行,在末尾添加rd.break
,按Ctrl+X
启动;进入紧急模式后,执行mount -o remount,rw /sysroot
,chroot /sysroot
切换到根环境,用passwd root
重置密码,touch /.autorelabel
(修复SELinux上下文),最后exit
并reboot
重启服务器。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/29092.html