turnkey: add hostname & Fix TUN access (#6512)
* Update turnkey.sh Allow choosing container ID & add tun device access to the container. Also notify user that the credentials are stored in a file on the host machine. * Update turnkey.sh fixed how tun access is added by instead modifying the conf file of the container. Also added filtering to only add tun access if required. A few other minor verbiage changes/corrections. * Update turnkey.sh Corrected variable expansion.
This commit is contained in:
parent
86d438c3a1
commit
7d6806e1fb
@ -98,11 +98,14 @@ turnkey=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "TurnKey LXCs
|
|||||||
|
|
||||||
# Setup script environment
|
# Setup script environment
|
||||||
PASS="$(openssl rand -base64 8)"
|
PASS="$(openssl rand -base64 8)"
|
||||||
CTID=$(pvesh get /cluster/nextid)
|
# Prompt user to confirm container ID
|
||||||
|
CTID=$(whiptail --backtitle "Container ID" --title "Choose the Container ID" --inputbox "Enter the conatiner ID..." 8 40 $(pvesh get /cluster/nextid) 3>&1 1>&2 2>&3)
|
||||||
|
# Prompt user to confirm Hostname
|
||||||
|
HOST_NAME=$(whiptail --backtitle "Hostname" --title "Choose the Hostname" --inputbox "Enter the containers Hostname..." 8 40 "turnkey-${turnkey}" 3>&1 1>&2 2>&3)
|
||||||
PCT_OPTIONS="
|
PCT_OPTIONS="
|
||||||
-features keyctl=1,nesting=1
|
-features keyctl=1,nesting=1
|
||||||
-hostname turnkey-${turnkey}
|
-hostname $HOST_NAME
|
||||||
-tags proxmox-helper-scripts
|
-tags community-script
|
||||||
-onboot 1
|
-onboot 1
|
||||||
-cores 2
|
-cores 2
|
||||||
-memory 2048
|
-memory 2048
|
||||||
@ -199,6 +202,15 @@ pct create $CTID ${TEMPLATE_STORAGE}:vztmpl/${TEMPLATE} ${PCT_OPTIONS[@]} >/dev/
|
|||||||
# Save password
|
# Save password
|
||||||
echo "TurnKey ${turnkey} password: ${PASS}" >>~/turnkey-${turnkey}.creds # file is located in the Proxmox root directory
|
echo "TurnKey ${turnkey} password: ${PASS}" >>~/turnkey-${turnkey}.creds # file is located in the Proxmox root directory
|
||||||
|
|
||||||
|
# If turnkey is "OpenVPN", add access to the tun device
|
||||||
|
TUN_DEVICE_REQUIRED=("openvpn") # Setup this way in case future turnkeys also need tun access
|
||||||
|
if printf '%s\n' "${TUN_DEVICE_REQUIRED[@]}" | grep -qw "${turnkey}"; then
|
||||||
|
info "${turnkey} requires access to /dev/net/tun on the host. Modifying the container configuration to allow this."
|
||||||
|
echo "lxc.cgroup2.devices.allow: c 10:200 rwm" >> /etc/pve/lxc/${CTID}.conf
|
||||||
|
echo "lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file 0 0" >> /etc/pve/lxc/${CTID}.conf
|
||||||
|
sleep 5
|
||||||
|
fi
|
||||||
|
|
||||||
# Start container
|
# Start container
|
||||||
msg "Starting LXC Container..."
|
msg "Starting LXC Container..."
|
||||||
pct start "$CTID"
|
pct start "$CTID"
|
||||||
@ -239,4 +251,5 @@ info "Proceed to the LXC console to complete the setup."
|
|||||||
echo
|
echo
|
||||||
info "login: root"
|
info "login: root"
|
||||||
info "password: $PASS"
|
info "password: $PASS"
|
||||||
|
info "(credentials also stored in the root user's root directory in the 'turnkey-${turnkey}.creds' file.)"
|
||||||
echo
|
echo
|
||||||
|
Loading…
x
Reference in New Issue
Block a user