push readme
This commit is contained in:
commit
38c475f5e7
145
README.md
Normal file
145
README.md
Normal file
@ -0,0 +1,145 @@
|
||||
# IPXE
|
||||
|
||||
Ce projet a pour but de déployer un serveur IPXE proposant des distributions Linux open source
|
||||
|
||||
## TABLE DES MATIERES
|
||||
|
||||
[INSTALLATION (ON DEBIAN)](#installation-(on-debian))
|
||||
|
||||
[CONFIGURATION FILES](#configuration-files)
|
||||
|
||||
[STEPS SCRIPT INSTALL](#steps-script-install)
|
||||
- [Variable](#variables)
|
||||
- [Dependencies](#dependencies)
|
||||
- [DHCP Server](#dhco-server)
|
||||
- [TFTP Server](#tftp-server)
|
||||
- [NFS Server](#nsf-server)
|
||||
- [LAMP Server](#lamp-server)
|
||||
- [Prepare iPXE startup files](#prepare-ipxe-startup-files)
|
||||
- [SAMBA for win installs](#samba-for-win-installs)
|
||||
- [Directories for distributions](#directories-for-distributions)
|
||||
- [TFTPD-HPA Restart](#tftpd-hpa-restart)
|
||||
- [Install Distributions](#install-distributions)
|
||||
- [In progress](#in-progress)
|
||||
- [Good rights](#good-rights)
|
||||
- [Reboot](#variables)
|
||||
|
||||
[MANUAL INSTALLATION OF DISTRIBUTIONS](#manual-installation-of-distributions)
|
||||
|
||||
## INSTALLATION (ON DEBIAN)
|
||||
|
||||
```bash
|
||||
sudo ./ipxe-install.sh
|
||||
```
|
||||
|
||||
## CONFIGURATION FILES
|
||||
|
||||
**IMPORTANT : THE CONFIGURATION FILES HAVE BEEN EDITED UPSTREAM AND REPLACE THE DEFAULT FILES**
|
||||
|
||||
More about : https://gitlab.com/garagenum/greg/pxe/-/blob/ipxe/get-distribs.sh
|
||||
### [DHCP](#dhcp-server)
|
||||
|
||||
- ```./configs/isc-dhcp-server /etc/default/isc-dhcp-server```
|
||||
- ```./configs/dhcpd.conf /etc/dhcp/```
|
||||
|
||||
### [TFTP](#tftp-server)
|
||||
|
||||
- ```./configs/tftpd-hpa /etc/default/tftpd-hpa```
|
||||
|
||||
### [MENU](#ipxe-menu)
|
||||
|
||||
- ```./configs/install.ipxe /var/www/html/install.ipxe```
|
||||
|
||||
### [SAMBA](#samba-for-win-installs)
|
||||
|
||||
- ```./configs/smb.conf /etc/samba/smb.conf```
|
||||
|
||||
## STEPS SCRIPT INSTALL
|
||||
|
||||
about : [ipxe-install.sh](https://gitlab.com/garagenum/greg/pxe/-/blob/ipxe/ipxe-install.sh)
|
||||
|
||||
### Variables
|
||||
|
||||
- Check server ip
|
||||
- Network interface check
|
||||
|
||||
### Dependencies
|
||||
|
||||
- Update the system
|
||||
- Install wget program
|
||||
- Install : ```wimboot``` ```mkisofs``` ```cabextract```
|
||||
|
||||
### DHCP Server
|
||||
|
||||
Installation of the DHCP server on the server.
|
||||
(WARNING : A server must have a fixed ip address ! )
|
||||
- Install isc-dhcp-server
|
||||
- Edit dhcp.conf located in ```etc/dhcp/``` >>> adapt to our current network
|
||||
|
||||
For our configuration we have chosen as address range between ```.150``` & ```.199```
|
||||
|
||||
### TFTP Server
|
||||
|
||||
The TFTP server is the one that will provide the necessary files for network startup.
|
||||
- Install TFTP server
|
||||
- Edit tftpd-hpa file located in ```/etc/default/```
|
||||
- Replace the TFTP address with the address of our ixpe server
|
||||
- Then restart the service : isc-dhcp-server
|
||||
|
||||
### NFS Server
|
||||
|
||||
The NFS server will be necessary in some cases, it allows to leave files available to the started system.
|
||||
- Install nfs-kernel-server
|
||||
|
||||
### LAMP Server
|
||||
|
||||
To work, iPXE needs an HTTP server.
|
||||
- Install HTTP server
|
||||
- Create a symbolic link from tftpboot to the LAMP server
|
||||
### Prepare iPXE startup files
|
||||
- In this directory : ```/var/lib/tftpboot```
|
||||
- Downloading files from the Web :
|
||||
```undionly.kpxe``` and ```ipxe.efi```
|
||||
### IPXE Menu
|
||||
- The iPXE menu must be located on the web server, located in ```/var/www/html/```
|
||||
- Create a symbolic link from ```/var/www/html/install.ipxe``` to ```/var/lib/tftpboot/```
|
||||
- Allow sharing in the NFS configuration file :
|
||||
|
||||
```bash
|
||||
sudo echo "/var/lib/tftpboot/ *(async,no_root_squash,no_subtree_check,ro) /etc/exports"
|
||||
```
|
||||
- Then restart the service nfs-kernel-server
|
||||
### SAMBA for win installs
|
||||
- Install Samba
|
||||
- Enable smbd service
|
||||
- Then restart smbd service
|
||||
### Directories for distributions
|
||||
- In this directory : ```/var/lib/tftpboot```
|
||||
- Create folders for all used distributions
|
||||
### TFTPD-HPA Restart
|
||||
- Restart tftpd-hpa service
|
||||
### Install Distributions
|
||||
- Call the script ```get-distribs.sh```
|
||||
### In progress
|
||||
- WINDOWS PE -- TODO
|
||||
- INSTALL DEPENDANCES
|
||||
- PLACEMENT FICHIERS WINPE + AUTRES WINDOWS
|
||||
- PRE CONFIG WINPE POUR AUTOBOOT (NETUSE DANS STARTCMD)
|
||||
### Good rights
|
||||
- Re-establishing the right rights to root : ```/var/lib/tftpboot```
|
||||
- Modification of the rights of a directory and its sub-directories : ```/var/lib/tftpboot```
|
||||
### Reboot
|
||||
- Reboot and and test the operation
|
||||
|
||||
## DONE !
|
||||
## MANUAL INSTALLATION OF DISTRIBUTIONS
|
||||
about : [get-distribs.sh](https://gitlab.com/garagenum/greg/pxe/-/blob/ipxe/get-distribs.sh)
|
||||
### Process
|
||||
- In this directory ```/tmp```
|
||||
- We have added a variable url, in which is referenced the url that will serve as a source to download the iso
|
||||
- Then we mount iso file in this directory ```/mnt```
|
||||
|
||||
Explication : The loop option of mount (it's not a type, it's an option) tells mount that this is a "looping" device - a normal file to use as a block device. In the background, mount sets up a loopback device, then mounts it to /mnt in our case.
|
||||
- We copy everything in ```/mnt``` to a folder in the ```/var/lib/tftpboot/``` directory where our installation images are located
|
||||
- Then we dismantle everything in ```/mnt```
|
||||
- Finally we delete the iso present in the /mnt directory
|
||||
100
distributions-url.md
Normal file
100
distributions-url.md
Normal file
@ -0,0 +1,100 @@
|
||||
# IPXE
|
||||
|
||||
ADRESSES DES DISTRIBUTIONS POUR IPXE DU GARAGE
|
||||
|
||||
## DEBIAN 12
|
||||
|
||||
### 64 BITS
|
||||
|
||||
wget https://ftp.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux
|
||||
wget https://ftp.debian.org/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz
|
||||
wget http://debian.proxad.net/debian/dists/stable/main/installer-amd64/current/images/netboot/debian-installer/amd64/firmware.cpio.gz
|
||||
|
||||
### 32 BITS
|
||||
|
||||
wget http://debian.proxad.net/debian/dists/stable/main/installer-i386/current/images/netboot/debian-installer/i386/initrd.gz
|
||||
wget https://ftp.debian.org/debian/dists/stable/main/installer-i386/current/images/netboot/debian-installer/i386/inux
|
||||
wget https://ftp.debian.org/debian/dists/stable/main/installer-i386/current/images/netboot/debian-installer/i386/firmware.cpio.gz
|
||||
|
||||
### LIVE
|
||||
|
||||
wget https://cdimage.debian.org/debian-cd/current-live/amd64/iso-hybrid/debian-live-12.0.0-amd64-gnome.iso
|
||||
|
||||
## UBUNTU 24
|
||||
|
||||
### 64 BITS
|
||||
|
||||
wget http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/ubuntu-installer/amd64/linux
|
||||
wget http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/ubuntu-installer/amd64/initrd.gz
|
||||
|
||||
### LIVE
|
||||
|
||||
wget http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/xen/vmlinuz
|
||||
wget http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/xen/initrd.gz
|
||||
|
||||
## KALI
|
||||
|
||||
wget https://cdimage.kali.org/current/kali-linux-2023.2a-installer-amd64.iso
|
||||
|
||||
sudo mount -o loop ./kali-linux-2023.2a-installer-amd64.iso /mnt
|
||||
sudo cp -r /mnt/. /var/lib/tftpboot/kali-live-64
|
||||
sudo umount /mnt
|
||||
sudo rm -rf /tmp/kali-linux-2023.2a-installer-amd64.iso
|
||||
|
||||
### 64-bit:
|
||||
|
||||
wget https://http.kali.org/kali/dists/kali-rolling/main/installer-amd64/current/images/netboot/debian-installer/amd64/linux
|
||||
wget https://http.kali.org/kali/dists/kali-rolling/main/installer-amd64/current/images/netboot/debian-installer/amd64/initrd.gz
|
||||
|
||||
### 32-bit:
|
||||
|
||||
wget https://http.kali.org/kali/dists/kali-rolling/main/installer-i386/current/images/netboot/debian-installer/i386/linux
|
||||
wget https://http.kali.org/kali/dists/kali-rolling/main/installer-i386/current/images/netboot/debian-installer/i386/initrd.gz
|
||||
|
||||
### LIVE
|
||||
|
||||
wget
|
||||
wget
|
||||
|
||||
## SHRED OS
|
||||
|
||||
## SHREDOS-64
|
||||
|
||||
wget https://github.com/PartialVolume/shredos.x86_64/releases/download/v2021.08.2_21_x86-64_0.32.023/shredos-2021.08.2_21_x86-64_0.32.023_20220126.iso
|
||||
|
||||
sudo mount -o loop ./shredos-2021.08.2_21_x86-64_0.32.023_20220126.iso /mnt
|
||||
sudo cp -r /mnt/. /var/lib/tftpboot/shredos-64
|
||||
sudo umount /mnt
|
||||
sudo rm -rf /tmp/shredos-2021.08.2_21_x86-64_0.32.023_20220126.iso
|
||||
|
||||
## SHREDOS-32
|
||||
|
||||
wget https://github.com/PartialVolume/shredos.x86_64/releases/download/v2021.08.2_21_x86-64_0.32.023/shredos-2021.08.2_21_i586_0.32.023_20220126.iso
|
||||
|
||||
sudo mount -o loop ./shredos-2021.08.2_21_i586_0.32.023_20220126.iso /mnt
|
||||
sudo cp -r /mnt/. /var/lib/tftpboot/shredos-32
|
||||
sudo umount /mnt
|
||||
sudo rm -rf /tmp/shredos-2021.08.2_21_i586_0.32.023_20220126.iso
|
||||
|
||||
## LMDE
|
||||
|
||||
### LMDE-LIVE-64
|
||||
|
||||
|
||||
wget https://ftp.crifo.org/mint-cd/debian/lmde-5-cinnamon-64bit.iso
|
||||
|
||||
sudo mount -o loop lmde-5-cinnamon-64bit.iso /mnt
|
||||
sudo cp -r /mnt/. /var/lib/tftpboot/lmde-live-64
|
||||
sudo umount /mnt
|
||||
sudo rm -rf /tmp/lmde-5-cinnamon-64bit.iso
|
||||
|
||||
### LMDE-LIVE-32
|
||||
|
||||
wget https://ftp.crifo.org/mint-cd/debian/lmde-5-cinnamon-32bit.iso
|
||||
|
||||
sudo mount -o loop ./lmde-5-cinnamon-32bit.iso /mnt
|
||||
sudo cp -r /mnt/. /var/lib/tftpboot/lmde-live-32
|
||||
sudo umount /mnt
|
||||
sudo rm -rf /tmp/lmde-5-cinnamon-32bit.iso
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user