Does Host registration support FreeBsd & What are steps to register a FreeBsd host in Foreman?

**Problem: I’m not able register host for Freebsd family when I’m running curl command i.e., curl -sS --insecure 'https://foreman.example.com/register?.... ' | bash

**Expected outcome: Host should be registered to Foreman

**Foreman and Proxy versions: 3.3.0 & 3.3.0-rc3

I’m not sure it’s properly supported today, but if you don’t post anything about the output then it’s hard to say why it doesn’t work.

I’d also recommend upgrading your Foreman. Version 3.3.0 is not supported anymore and current versions (3.7 & 3.6) and contain many improvements to the registration workflow.


@ekohl I have attached the error which I’m getting while running curl register on Pfsense CLI. Please guide me how to proceed further. I’m following this link comments of Marek_Hulan

Run the curl command without pipe into bash, i.e. omit the | bash. This will output the script it want to run. Copy the full text and paste it into a preformatted text block in your response.

The registration script doesn’t really take freebsd userland into consideration. In this case, it is trying to execute hostname --fqdn, which the variant available on freebsd doesn’t have.

But yes, you should be able to either change the template in foreman or just download it and change it before you run it.

Looks like this line here should be hostname -f then:

A PR for that is very welcome.

#!/bin/sh

# Rendered with following template parameters:
# User: [admin]
# Organization: [Default Organization]
# Location: [Default Location]
# Operating system: [Freebsd]
# Setup Insights: [false]
# Setup remote execution: [true]
# Update packages: [false]

if ! [ $(id -u) = 0 ]; then
    echo "Please run as root"
    exit 1
fi


if [ -f /etc/os-release ] ; then
  . /etc/os-release
fi

# Get OS package manager
# ---
# apt-get   Debian
#           Ubuntu
# dnf       Fedora
#           RHEL family version > 7
# yum       RHEL family version < 8
# pacman    Arch
# zypper    openSUSE Tumbleweed

if [ -f /etc/fedora-release ]; then
  PKG_MANAGER='dnf'
elif [ -f /etc/redhat-release ] ; then
  if [ "${VERSION_ID%.*}" -gt 7 ]; then
    PKG_MANAGER='dnf'
  else
    PKG_MANAGER='yum'
  fi
elif [ -f /etc/debian_version ]; then
  PKG_MANAGER='apt-get'
elif [ -f /etc/arch-release ]; then
  PKG_MANAGER='pacman'
elif [ x$ID = xopensuse-tumbleweed ]; then
  PKG_MANAGER='zypper'
fi


SSL_CA_CERT=$(mktemp)
cat << EOF > $SSL_CA_CERT
-----BEGIN CERTIFICATE-----
MIIFZzCCA0+gAwIBAgIBAjANBgkqhkiG9w0BAQsFADApMScwJQYDVQQDDB5QdXBw
ZXQgUm9vdCBDQTogN2IxYWI1Mjg4NmFkOWYwHhcNMjMwNjA0MDQ1ODAxWhcNMzgw
NjAxMDQ1ODA3WjArMSkwJwYDVQQDDCBQdXBwZXQgQ0E6IGNkbS5jeWVtcHRpdmVs
YWJzLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAL47j2fVYow/
H63RPm7G+YBNTAZJUucEP3WPXQ2UC1J2CufNlsaoUyLjj1Azi4v0yr2HrrM/VsT2
KX5VgzbZV+FSLdECww2w2c8mc1PDx8EAJ5d39//cAHdfzwrKRCbmNZh37Vp4zCg0
wp5FGa0HYhmJW1Lc4tEP3eHr9M/wJNARE7YFRSI7QiW3HBV7DinZPUwgnDM/oc7w
vYQRnCcJO6vsozzUCNGps95sLeJ3qOt75Fo+6lPvYH37p6pEVpNWNbYNX+r/OhKD
V5GhGWfit65tK7jKPJjaZHL4Nxs5xGQxJmF8Q474xROlAuEzRKR605DeorJp13WS
Ta1RvjNQoYb1y6yDM/X6T6yPsp7yZmLeeK9BnH2SOT6cOYjkDBciTCqNvQMUNpXD
rWRHpE4vRxqPI5MsOq/MfePN4hqKgMqqBso4iCAU73eGPe4REaCIDYLtBe0W9cTj
eFHW5f6tBn+JOlyRpiN7FnmaImF5xrv9i/axgnCONZTbejn03LJz98qxmf1VQ8ji
dOhAjOy8g/kr1kX5RFLVPT22rm3/uHE6gwSJ591dyswXyApFlGXrtHhOTNsEC0J2
i8wnjg6jNAKt33SUkOkqWtrfI+VZInjxFwEDXH0ezBQFjogM8rnID95PzONVsopc
gsuNeBQLainXH5ZSpDG3nDwle4V897VLAgMBAAGjgZcwgZQwDwYDVR0TAQH/BAUw
AwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJgk2l2Ur5L4fCjTkKgKIkdq
X1laMDEGCWCGSAGG+EIBDQQkFiJQdXBwZXQgU2VydmVyIEludGVybmFsIENlcnRp
ZmljYXRlMB8GA1UdIwQYMBaAFBPPuvt3vHZ48muIQ5mGQ3atYOhMMA0GCSqGSIb3
DQEBCwUAA4ICAQAIdj569zZGR+J0oL3WDUceZ0MovAoYc4Yc4lQh0sBxO5GOkbz2
YAzT0naqTcu27ggOZH6BLxlbFbGUDKqNVbIUdONIajSoZg3SmfYtnP6gD7oPVtF6
0ejunQg+TSI6lqfwm68zSyATenzXF/6ERKo5X2sPaCNa+rwE9NXFiUiTvW1DhnBz
PnGP9yMmffTX7Hp1Oc7ZFehS5xrcxp4xBHjFKZoeQ1C/OdewP9tRrLKgN7KE8AV7
Wgjz32AVSWqA9PI8pnEIo4pOOmT+fhba3vOfcij/flHR7R8ZVQYN+ATLKHePiLd+
QehksaVHEgoQurZ0DKTcanH7J1ZDQtn4n59cdE3TrOY+w2PkaIZXYgkbplNv1+L6
k0kunvPHPO3CxcPmFmQ+cBqD9yFJI/iaOgBFr8U8MTuWh/srnvYQe4/leuSaCV68
A71RSEIUP5AINQTleMMieewv+ZtfSLgVdJVmeT9yhaxJQBPKQxJoY6fHi5oSIBAS
T7z1LyBnO6HvgHacBLazQLrURtWPKUNDTUAAA96c4cfMm7uon0UDUOFvJXAkm6o2
57OMVlVBCXzO5I1UpnR20oVcx5m+nuPr3kSSfnsT7yHXVqTTJO3A/d9OmhI9zVLh
Bsi5VVuRmbm0AbxSZbwI3kUqmPrfn9m60ZjH237e1w/RiPx9aPyaNG98oA==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFZTCCA02gAwIBAgIBATANBgkqhkiG9w0BAQsFADApMScwJQYDVQQDDB5QdXBw
ZXQgUm9vdCBDQTogN2IxYWI1Mjg4NmFkOWYwHhcNMjMwNjA0MDQ1ODAxWhcNMzgw
NjAxMDQ1ODAzWjApMScwJQYDVQQDDB5QdXBwZXQgUm9vdCBDQTogN2IxYWI1Mjg4
NmFkOWYwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCsINRDsB0V97U5
961idrdXPFzv1U4RZjhAyRJ8UPaw+kdsCAtKkeBoHPhGhX3Yv72WpS7aJlNgfWtF
LzPTpli3wai3DiL45WCTvWfmyTroZuKeC0P7yX9bDNpvwZ32wwWtrf4944ZCzwpZ
qTnexZelmqzBqbfJMoAqOn08OpRFVrMqfHB3Avp0XXxnZ3hAtP9n2+VO38cVlkDe
O45Knv2HsvEZzmrfqfxDQql4gUsBayjGU3GD87PS7HaPyi0Yrp2envrOIjbA2uKq
M3SfPSCN8LNhoPhWvR0/v6PpK7O+FwZkrnWWo6uih7rCnQLdnZbi8s1J4h7UMxNi
n3r/hCx1mfLBY457CJtcFJL+R3UoKEkVdGm0yPbHJKUI6F291D1J9YjU+4Z/WP3Y
t8b5LhPCXajOdc63vz3q3+byZar08sOIkE4KTRxrXa+HoblcwQ2+78iwPTjUCfDP
0VjITapE/jQhbTFamWdWBPk703ELc9t0VJG7V0OhVrwczwtmCITaklPxPROU8PiQ
XQwz302f8ewvjETkfbCJqD7FBKMr9iEH0co/BuYw+CnUM4XrzpCg7OmmjMsibm5U
sbwCeZpBQN5ksfVQks1+uxDOhX++xB8HTz1EHxi9FdTTjml3GByvF5pugXa3dXMr
cDgSd33tL2Dyt5REBJSJ7rHGnq+pkQIDAQABo4GXMIGUMA8GA1UdEwEB/wQFMAMB
Af8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBQTz7r7d7x2ePJriEOZhkN2rWDo
TDAxBglghkgBhvhCAQ0EJBYiUHVwcGV0IFNlcnZlciBJbnRlcm5hbCBDZXJ0aWZp
Y2F0ZTAfBgNVHSMEGDAWgBQTz7r7d7x2ePJriEOZhkN2rWDoTDANBgkqhkiG9w0B
AQsFAAOCAgEAp8sPrqt0U3YjORGxyirYi1wGiFefgJ8dCBORzzlD2ZTIwKseN90L
2xHpmOxCg1kMy2yJpSoJqQN0eIQQJke8wjyc+cVLVyawS/W5IJ3vL1cOdZyOMdgr
IeFyUqXzcbaZtGPCb/5if1DzSt6qIdRGhRQ9VmvsphNhReFPTqSF7+ONBmkaI/L+
10rsBF0dK35G+oF/AHpRa1OK+KkJuHcpt8aPzO0fy+Uaai50oHCH/mabhc3Vf3Wx
IiptJHfNenpdFp+vNs7piP7z3x+Iilb2ocVadJ5aIrfVrrhr1Voj96gBH5JIrdxt
g1Aquai2vQNpJECuk9iYBsiVZ4UIMS4PFrcvGV/4wHEoC9Lrz2ISDE/OB/4zZOLR
UCZmNPQx48Y4QjMvBRQR4RtklWAsY8PCdB55FGlYaFab2OHYpEk3zCBKPgVoarIV
Ohbcs1HZDSYJw7D28c+mvDIwbkQ95xBbo7DH+dphJxvK0eXDK23hl5ViYdmJja00
03w02xHBe/GVHCGxAyohKwjfFnXrhSsT29D/RercFW2GfWa9cNud44MQRL9QpbrW
JJ36vqnodbGzUPlx2g1zl2iFd7z3G7WG6J0WfcwSW+TSrXN9vQ95iTpFfNEYZ9tY
h2lHYhMthc/WM/1sJs5wzoQGDsFUKkQweccsbma0b4WDSSRZZ66m2Ms=
-----END CERTIFICATE-----

EOF

cleanup_and_exit() {
  rm -f $SSL_CA_CERT
  exit $1
}


register_host() {
  curl --silent --show-error --cacert $SSL_CA_CERT --request POST https://kag.thorization.com/register \
       -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjo0LCJpYXQiOjE2ODc5MTU3ODQsImp0aSI6IjA5ZmViYWM3ZjViYTE4YWI3NGZiYjUwOWE1ZTExZTZhNTdlMTAyODliMTNhODNjYjk4NDhjOGE5MDhkYjEwMzciLCJleHAiOjE2ODc5MzAxODQsInNjb3BlIjoicmVnaXN0cmF0aW9uI2dsb2JhbCByZWdpc3RyYXRpb24jaG9zdCJ9.p_xVAmysRI_zzgEYViIbtJQ62gyY8NmpIPaqVPHA598' \
       --data "host[name]=$(hostname --fqdn)" \
       --data "host[build]=false" \
       --data "host[managed]=false" \
       --data 'host[organization_id]=1' \
       --data 'host[location_id]=2' \
       --data 'host[operatingsystem_id]=5' \
       --data 'setup_insights=false' \
       --data 'setup_remote_execution=true' \
       --data 'update_packages=false' \

}

echo "#"
echo "# Running registration"
echo "#"

register_host | bash

cleanup_and_exit

Which template need to modified & what to be changed.

I missed this while I was on vacation, but I already linked to it: in my previous post: https://github.com/theforeman/foreman/blob/develop/app/views/unattended/provisioning_templates/registration/global_registration.erb. If you submit a PR there then it’ll be fixed in future releases.