yumyum
[Linux] PXE 본문
Server
[ PXE 부팅 서버 만들기 ]
# yum -y install syslinux tftp-server vsftpd dhcp xinetd
# systemctl stop firewalld
# systemctl disable firewalld
# setenforce 0
-> 보안 관련 설정
<dhcp 설정> (동적호스트 프로토콜)
# vim /etc/dhcp/dhcpd.conf
subnet 192.168.111.0 netmask 255.255.255.0 {
option routers 192.168.111.2 ;
option subnet-mask 255.255.255.0 ;
range dynamic-bootp 192.168.111.30 192.168.111.50 ;
option domain-name-servers 192.168.111.2 ;
allow booting ;
allow bootp ;
next-server 192.168.111.100 ;
filename "pxelinux.0" ;
}
<tftp 설정>
# vim /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 -> yes -> no 수정
per_source = 11
cps = 100 2
flags = IPv4
}
<CD-rom , ftp 마운트>
vm에서 CD 마운트
# df
# umount /dev/sr0
# mount /dev/sr0 /var/ftp/pub/
# cp /var/ftp/pub/images/pxeboot/vmlinuz /var/lib/tftpboot/
# cp /var/ftp/pub/images/pxeboot/initrd.img /var/lib/tftpboot/
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
-> 파일 3개 복사
# mkdir /var/lib/tftpboot/pxelinux.cfg
# cd /var/lib/tftpboot/pxelinux.cfg
# vim default
DEFAULT CentOS7_Auto_Install
LABEL CentOS7_Auto_Install
kernel vmlinuz
APPEND initrd=initrd.img repo=ftp://192.168.111.100/pub
<데몬 restart>
# ps -ef | grep dnsmasq
# kill -9 1859
grep으로 만든 값만 제외하고 삭제
# systemctl restart dhcpd
# systemctl restart vsftpd
# systemctl restart xinetd
# systemctl enable xinetd
# systemctl enable vsftpd
# systemctl enable dhcpd
가상 컴퓨터 새로 만들어서 테스트
메모리 2GB 필수!!!!!!
[ Kick start ]
# yum -y install system-config-kickstart system-config-keyboard
# system-config-kickstart
기본설정 : 기본언어 : 한국어
시간대 : Asia/Seoul
root 암호 : p@ssw0rd
고급설정 : 설치후 시스템 재부팅 (체크)
설치방법 : 새로운 설치 실행 (체크)
설치소스 : ftp 서버 192.168.111.100
ftp 디렉토리 pub
부트로더 옵션 : 새로운 부트로더 설치 (체크)
파티션 정보 : 마스터 부트 레코드 내용 삭제 (체크)
파티션 : 모든 기존 파티션 삭제
디스크레이블: 초기화
레이아웃 추가 :
/ ext4 1 10240
swap 2048
/data ext4 1(나머지 다)
메뉴 -> 저장
파일시스템, var, ftp에 centos.ks 로 저장
종료
var/ftp에 centos.ks 로 저장
# vim /var/ftp/centos.ks
-> 설정 확인 후 제일 밑에 패키지 정보 추가
part / --asprimary --fstype="ext4" --size=10240
part swap --fstype="swap" --size=2048
part /data --fstype="ext4" --grow --size=1
cf) 파티션 에러났을 때
part /boot --fstype=ext4 --size=20480
part swap --size=2048
part / --fstype=ext4 --grow --size=1
reboot
%packages
@base
@core
@directory-client
@fonts
@gnome-desktop
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@x11
%end
# vim /var/lib/tftpboot/pxelinux.cfg/default
APPEND initrd=initrd.img repo=ftp://192.168.111.100/pub ks=ftp://192.168.111.100/centos.ks
-> ks 부분 추가 수정
cf) 패키지 에러 났을때
%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@x11
chrony
kexec-tools
%end
[고정 ip ]
새로운 버츄얼 머신을 생성후에 맥주소 확인 (설정 > 네트워크 어댑터 > 어드벤스드)
centos7에서 dhcp 파일을 수정 -> 맥주소 수정
재부팅하고 pxe서버로 접속했을때,
사용자 이름이 pxetest001로 변경되고,
ip가 설정해준 70으로 변경된것을 볼 수 있다.
'ICT기반 클라우드 네트워크 해킹 침해대응전문가 > Linux' 카테고리의 다른 글
[Linux] 메일서버 (0) | 2023.09.13 |
---|---|
[Linux] DHCP (0) | 2023.09.11 |
[Linux] Bridge (0) | 2023.09.07 |
[Linux] 포트포워딩, 브릿지 (0) | 2023.09.07 |
[Linux] HTTPs (0) | 2023.09.06 |