一、关闭SELINUX
vi /etc/selinux/config
#SELINUX=enforcing #注释掉
#SELINUXTYPE=targeted #注释掉
SELINUX=disabled #增加
:wq! #保存退出
setenforce 0 #使配置立即生效
二、配置防火墙,开启TCP:80端口、UDP:69端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 69 -j ACCEPT
service iptables restart
#如果TFTP传不了文件关键防火墙
iptables -F
三、安装http服务器
yum install -y httpd #安装
chkconfig httpd on #设置开机启动
service httpd restart #启动
四、挂载/上传系统安装镜像到http服务器站点目录(winrar解压出来的文件md5不一样,请用ULTRAISO解压iso)
mkdir -p /var/www/html/os #创建挂载目录
mount -t iso9660 -o loop /usr/local/src/CentOS-6.6-x86_64-minimal.iso /var/www/html/os
五、安装tftp服务器
yum install -y tftp tftp-server #安装
vi /etc/xinetd.d/tftp #编辑
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
:wq! #保存退出
service xinetd start #启动
mkdir -p /var/lib/tftpboot
cp /var/www/html/os/images/pxeboot/vmlinuz /var/lib/tftpboot
cp /var/www/html/os/images/pxeboot/initrd.img /var/lib/tftpboot
mkdir -p /var/lib/tftpboot/pxelinux.cfg
cp /var/www/html/os/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default #拷贝启动菜单
vi /var/lib/tftpboot/pxelinux.cfg/default #编辑修改
default linux
prompt 0
timeout 600
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
kernel vmlinuz
append initrd=initrd.img
label text
kernel vmlinuz
append initrd=initrd.img text
label ks
kernel vmlinuz
append ks initrd=initrd.img
label local
localboot 1
label memtest86
kernel memtest
append -
:wq! #保存退出
chmod 644 /var/lib/tftpboot/pxelinux.cfg/default #设置文件权限
yum install -y syslinux #安装引导程序
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #拷贝引导文件到tftp服务器根目录
六、安装DHCP服务器
yum install -y dhcp #安装
vi /etc/dhcpd.conf #编辑配置文件
#低版本的文件位于/etc/dhcpd.conf
#高版本的文件位于/etc/dhcp/dhcpd.conf
ddns-update-style interim; #设置DHCP服务器模式
ignore client-updates; #禁止客户端更新
subnet 192.168.0.0 netmask 255.255.0.0 {
# --- default gateway
option routers 192.168.1.1; #路由
option subnet-mask 255.255.0.0; #子网掩码
# option nis-domain "domain.org";
# option domain-name "domain.org";
option domain-name-servers 8.8.8.8,8.8.4.4; #DNS服务器
option time-offset -18000; # Eastern Standard Time
# option ntp-servers 192.168.1.1;
# option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;
next-server 192.168.1.12; #tftp服务器地址
filename "pxelinux.0"; #tftp服务器根目录下面的文件名
range dynamic-bootp 192.168.1.20 192.168.1.230; #动态IP范围
default-lease-time 21600; #默认租约时间
max-lease-time 43200; #最大租约时间
# we want the nameserver to appear at a fixed address
host ns {
next-server marvin.redhat.com;
hardware ethernet 00:0C:29:E2:82:5C; #保留主机的MAC地址
fixed-address 192.168.21.201; #保留主机的IP,即绑定IP地址到主机
}
}
vi /etc/sysconfig/dhcpd #指定DHCP服务的网络接口
DHCPDARGS=eth0
:wq! #保存退出
dhcpd #测试dhcp服务器配置是否正确
service dhcpd restart #启动dhcp服务
chkconfig dhcpd on #设置开机启动
客户端部分