CentOS 7 基础服务实验手册
一、实验目的
掌握 CentOS 7 系统中常见基础服务的配置与管理,包括 SSH 远程连接、时间同步、文件共享、数据同步、文件传输、DNS 域名解析和 DHCP 动态地址分配。
二、实验环境
- 操作系统:CentOS 7(2 台虚拟机:Server 和 Client)
- 硬件要求:内存 2GB 以上,每台至少 20GB 磁盘空间
- 网络要求:两台主机通过桥接模式连接,IP 地址在同一网段
三、实验准备
- 确保两台主机网络连通(如 Server IP: 192.168.1.100,Client IP: 192.168.1.101)
- 关闭防火墙或配置相应规则:
systemctl stop firewalld
systemctl disable firewalld
- 安装实验所需工具:
yum install -y openssh-server ntp nfs-utils samba rsync vsftpd bind dhcp
四、实验步骤
(一)SSH 服务配置
1. 服务启停与验证
# 启动 SSH 服务
systemctl start sshd
# 设置开机自启
systemctl enable sshd
# 测试远程连接
ssh root@192.168.1.100
2. 密钥认证配置
# 在 Client 生成密钥对
ssh-keygen -t rsa
# 复制公钥到 Server
ssh-copy-id root@192.168.1.100
# 验证无密码登录
ssh root@192.168.1.100
3. 安全加固
# 修改 SSH 配置文件
vi /etc/ssh/sshd_config
修改内容:
Port 2222
PermitRootLogin no
PasswordAuthentication no
# 重启服务生效
systemctl restart sshd
(二)NTP 时间服务
1. 配置 NTP 服务器(Server)
# 编辑配置文件
vi /etc/ntp.conf
修改内容:
server 0.centos.pool.ntp.org
server 1.centos.pool.ntp.org
driftfile /var/lib/ntp/drift
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
# 启动服务
systemctl start ntpd
systemctl enable ntpd
2. 客户端同步时间(Client)
# 临时同步时间
ntpdate 192.168.1.100
# 配置自动同步(编辑定时任务)
crontab -e
添加内容:
*/5 * * * * /usr/sbin/ntpdate 192.168.1.100
(三)NFS 文件共享服务
1. 配置 NFS 服务器(Server)
# 创建共享目录
mkdir -p /nfs_share
echo "Hello NFS" > /nfs_share/test.txt
# 编辑共享配置
vi /etc/exports
添加内容:
/nfs_share 192.168.1.0/24(rw,sync,no_root_squash)
# 启动服务
systemctl start nfs-server
systemctl enable nfs-server
2. 客户端挂载(Client)
# 创建挂载点
mkdir /mnt/nfs
# 挂载共享目录
mount -t nfs 192.168.1.100:/nfs_share /mnt/nfs
# 验证文件访问
cat /mnt/nfs/test.txt
(四)Samba 文件共享服务
1. 配置 Samba 服务器(Server)
# 创建共享目录
mkdir -p /samba_share
echo "Hello Samba" > /samba_share/test.txt
# 编辑配置文件
vi /etc/samba/smb.conf
添加内容:
[public]
path = /samba_share
public = yes
writable = yes
guest ok = yes
# 启动服务
systemctl start smb nmb
systemctl enable smb nmb
2. 客户端访问(Client)
# 安装客户端工具
yum install -y samba-client
# 列出共享目录
smbclient -L //192.168.1.100
# 挂载共享目录
mount -t cifs //192.168.1.100/public /mnt/samba -o guest
(五)Rsync 数据同步
1. 本地同步
# 创建测试目录
mkdir -p /source /backup
echo "Test file" > /source/file.txt
# 同步目录(增量同步)
rsync -av --delete /source/ /backup/
2. 远程同步(Server → Client)
# 在 Client 配置接收目录
mkdir -p /remote_backup
# 在 Server 执行远程同步
rsync -av /source/ root@192.168.1.101:/remote_backup/
3. 定时任务
# 编辑定时任务
crontab -e
添加内容:
0 0 * * * rsync -av --delete /source/ /backup/
(六)FTP 文件传输服务
1. 配置 FTP 服务器(Server)
# 创建 FTP 目录
mkdir -p /var/ftp/pub
echo "Hello FTP" > /var/ftp/pub/test.txt
# 启动服务
systemctl start vsftpd
systemctl enable vsftpd
2. 客户端上传下载(Client)
# 匿名下载
wget ftp://192.168.1.100/pub/test.txt
# 上传文件(需配置本地用户)
ftp 192.168.1.100
> user: root
> password: (输入密码)
> put local_file.txt
(七)DNS 域名解析服务
1. 配置 DNS 服务器(Server)
# 编辑主配置文件
vi /etc/named.conf
修改内容:
listen-on port 53 { any; };
allow-query { any; };
# 创建区域文件
vi /var/named/example.com.zone
添加内容:
$TTL 86400
@ IN SOA ns1.example.com. admin.example.com. (
1 ; Serial
3600; Refresh
1800; Retry
604800; Expire
86400 ) ; Minimum
IN NS ns1.example.com.
ns1 IN A 192.168.1.100
web IN A 192.168.1.100
# 启动服务
systemctl start named
systemctl enable named
2. 客户端测试(Client)
# 修改 DNS 配置
echo "nameserver 192.168.1.100" > /etc/resolv.conf
# 测试解析
nslookup web.example.com
(八)DHCP 动态地址分配
1. 配置 DHCP 服务器(Server)
# 编辑配置文件
vi /etc/dhcp/dhcpd.conf
添加内容:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.150 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.100;
default-lease-time 600;
max-lease-time 7200;
}
# 启动服务
systemctl start dhcpd
systemctl enable dhcpd
2. 客户端获取地址(Client)
# 配置为 DHCP 模式
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改内容:
BOOTPROTO=dhcp
# 重启网络服务
systemctl restart network
# 验证地址
ip addr show
五、实验总结
通过本实验,你将掌握: 1. SSH 服务的安全配置与密钥认证 2. NTP 时间同步的实现方法 3. NFS 和 Samba 文件共享的配置 4. Rsync 数据同步与定时任务 5. FTP 文件传输服务的搭建 6. DNS 域名解析与 DHCP 地址分配
六、注意事项
- 敏感服务(如 SSH、FTP)需配置防火墙规则
- 文件共享服务注意权限控制(如 NFS 的 root_squash)
- 动态地址分配需确保 DHCP 与现有网络兼容
- DNS 区域文件配置后需重启服务生效
- 实验中建议使用虚拟机环境,避免对生产网络造成影响
提示:实验中所有服务默认监听 0.0.0.0,生产环境需根据实际需求限制访问范围。