Skip to content

Latest commit

 

History

History
177 lines (141 loc) · 8.02 KB

README-v2.md

File metadata and controls

177 lines (141 loc) · 8.02 KB

Install Proxmox on hetzner dedicated servers without console

Tested on Series AX , EX , SX

Proxmox Hetzner

Steps :

Prepare and Boot into rescue mode

  • Select the Rescue tab for the specific server, via the hetzner robot manager
    • Operating system=Linux
    • Architecture=64 bit
    • Public key=optional
  • --> Activate rescue system
  • Select the Reset tab for the specific server,
  • Check: Execute an automatic hardware reset
  • --> Send
  • Wait a few mins
  • Connect via ssh/terminal to the rescue system running on your server

Check the server supports UEFI

  • Run the following command to check if the server supports UEFI
# In rescue bash :
efibootmgr
# If the output of the command contains the word "UEFI", then the server is booted in UEFI mode.

Use config generator to make basic configurations

Install requirenments and download proxmox latest iso

  • Run the following commands to install requirenments and download proxmox iso
# In rescue bash :
apt -y install ovmf wget 
wget -O pve.iso http://download.proxmox.com/iso/proxmox-ve_7.4-1.iso
# you can check the latest one on http://download.proxmox.com/iso/

Start installing proxmox with VNC

  • For initial proxmox installer via VNC :
# In rescue bash :

#### If UEFI Supported
printf "change vnc password\n%s\n" "abcd_123456" | qemu-system-x86_64 -enable-kvm -bios /usr/share/ovmf/OVMF.fd -cpu host -smp 4 -m 4096 -boot d -cdrom ./pve.iso -drive file=/dev/nvme0n1,format=raw,media=disk,if=virtio -drive file=/dev/nvme1n1,format=raw,media=disk,if=virtio -vnc :0,password -monitor stdio -no-reboot

#### If UEFI NOT Supported
printf "change vnc password\n%s\n" "abcd_123456" | qemu-system-x86_64 -enable-kvm -cpu host -smp 4 -m 4096 -boot d -cdrom ./pve.iso -drive file=/dev/nvme0n1,format=raw,media=disk,if=virtio -drive file=/dev/nvme1n1,format=raw,media=disk,if=virtio -vnc :0,password -monitor stdio -no-reboot

Note: you can change the vnc password by changing the abcd_123456 to your own password

  • Connect with any VNC client to Your-Server-IP with password abcd_123456
  • Follow the proxmox installer steps and attention to the following points :
    • Choose zfs partition type
    • Choose off in compress type of advanced partitioning
    • Do not add real IP info in network configuration part (just leave defaults!)
    • Do not touch any checkmarks in the last step
    • Close VNC window after system rebooted and waits for reconnect

Run proxmox temporary on port 5555 for basic configs

# In rescue bash :

#### If UEFI Supported
qemu-system-x86_64 -enable-kvm -bios /usr/share/ovmf/OVMF.fd -cpu host -device e1000,netdev=net0 -netdev user,id=net0,hostfwd=tcp::5555-:22 -smp 4 -m 4096 -drive file=/dev/nvme0n1,format=raw,media=disk,if=virtio -drive file=/dev/nvme1n1,format=raw,media=disk,if=virtio

#### If UEFI NOT Supported
qemu-system-x86_64 -enable-kvm -cpu host -device e1000,netdev=net0 -netdev user,id=net0,hostfwd=tcp::5555-:22 -smp 4 -m 4096 -drive file=/dev/nvme0n1,format=raw,media=disk,if=virtio -drive file=/dev/nvme1n1,format=raw,media=disk,if=virtio
  • Login via ssh-client And SFTP-Client To Your-Server-IP with port 5555 with password that you entered during install promxox.
  • Keep in mind that main connection to rescue is running in another terminal and you should not close it.
  • Copy the downloaded config files (etc folder) to /root directory of the server via SFTP-Client
  • Now run these commands in ssh-client terminal :
# In ssh-terminal with port 5555 :
cp -rf /root/etc/* /etc/ && rm -rf /root/etc
poweroff
  • Close the ssh-client terminal + sftp-client app (on port 5555) and run the following command in rescue bash :
# In rescue bash :
reboot
  • Close the rescue bash terminal and wait a few minutes
  • Then connect via ssh-client to Your-Server-IP with port 22 with password that you entered during install promxox.

Run some post install scripts/commands

  • Config hostname,timezone and resolv file :
# In pve bash :

# Change Timezone
timedatectl set-timezone Europe/Istanbul

systemctl disable --now rpcbind rpcbind.socket

sed -i 's/^\([^#].*\)/# \1/g' /etc/apt/sources.list.d/pve-enterprise.list

echo "deb [arch=amd64] http://download.proxmox.com/debian/pve bullseye pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription-repo.list

sed -i "s|ftp.*.debian.org|ftp.debian.org|g" /etc/apt/sources.list

apt update && apt -y upgrade && apt -y autoremove

pveupgrade

pveam update

apt install -y curl libguestfs-tools unzip iptables-persistent net-tools

sed -Ezi.bak "s/(Ext.Msg.show\(\{\s+title: gettext\('No valid sub)/void\(\{ \/\/\1/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service

echo "nf_conntrack" >> /etc/modules
  • Limit ZFS Memory Usage According to This Link :
# In pve bash :
echo "options zfs zfs_arc_min=$[6 * 1024*1024*1024]" >> /etc/modprobe.d/99-zfs.conf
echo "options zfs zfs_arc_max=$[12 * 1024*1024*1024]" >> /etc/modprobe.d/99-zfs.conf
update-initramfs -u
  • Update system , ssh port and root password , add lxc templates ,then reboot your system!
bash <(curl -Ls https://gist.github.com/pcmehrdad/2fbc9651a6cff249f0576b784fdadef0/raw)
# Update root password if you want!
passwd

# Reboot The System
reboot

Your server is ready to use

  • Login to Web GUI on port 8006 with root user and password that you entered during install promxox.

    https://Your-Server-IP:8006

  • Your could use notes.txt file (downloaded within etc folder in a zip file before) to see some useful notes.

Useful links

ReadMe-v1.md

Other Useful Links :

https://tteck.github.io/Proxmox/
https://github.com/extremeshok/xshok-proxmox
https://github.com/extremeshok/xshok-proxmox/tree/master/hetzner
https://88plug.com/linux/what-to-do-after-you-install-proxmox/
https://gist.github.com/gushmazuko/9208438b7be6ac4e6476529385047bbb
https://github.com/johnknott/proxmox-hetzner-autoconfigure
https://github.com/CasCas2/proxmox-hetzner
https://github.com/west17m/hetzner-proxmox
https://github.com/SOlangsam/hetzner-proxmox-nat
https://github.com/HoleInTheSeat/ProxmoxStater
https://github.com/rloyaute/proxmox-iptables-hetzner
https://computingforgeeks.com/how-to-install-and-configure-firewalld-on-debian/
https://www.virtualizationhowto.com/2022/10/proxmox-firewall-rules-configuration/