Skip to content
This repository has been archived by the owner on Mar 23, 2021. It is now read-only.

Commit

Permalink
Merge pull request #111 from mondada/master
Browse files Browse the repository at this point in the history
NetSUSLP 5.0
  • Loading branch information
duncan-mccracken authored Sep 28, 2018
2 parents 143eb23 + 1a85d7a commit 286eee8
Show file tree
Hide file tree
Showing 572 changed files with 25,304 additions and 8,247 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ motd.legal-displayed
packer_cache
output-virtualbox-iso

*.iso
44 changes: 39 additions & 5 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,39 @@
# NetSUS Changelog

## 5.0

* Updated user interface to align with Jamf Pro UI
* Appliance Operating System is now Ubuntu 16.04.5
* Added (experimental) support for Ubuntu 18.04 LTS
* Added notifications for recommended actions
* Improved Active Directory (LDAP) integration for web administration
* Added ability to create/manage local system accounts
* Added support for multiple network interfaces.\
Note: Bonded interfaces are not supported in the UI
* Added ability to configure global proxy
* Improved ntp syncronization in Date/Time
* Added timezone picker map in Date/Time
* Improved SSL certificate interface
* Added full chain validation checks for SSL certificates
* New storage management interface for expanding LVM volumes
* Improved log viewer
* Added ability to download contents of log viewer
* Added dedicated settings pages for services
* Settings gear is contextually aware of service
* Added ability to enable/disable services
* Added ability to show/hide services in Dashboard
* Added ability to select SUS catalogs to sync
* Added ability to add custom SUS catalogs (beta/seed)
* Added ability to publish SUS catalogs over https
* Improved URL re-write functionality for SUS catalogs
* Added support for multiple NetBoot images
* Improved NetBoot image property editing
* Improved validation checks for LDAP proxy configuration
* Added service status messages to LDAP proxy
* Added File Sharing service
* Added ability to create smb/afp/http shares
* Added ability to manage users for shares

## 4.2.1

* Added High Sierra support for SUS
Expand Down Expand Up @@ -65,11 +99,11 @@

## 3.0

* The NetBoot/SUS/LP Server can now be installed on RHEL and CentOS
* The NetSUS can now be installed on RHEL and CentOS

## 2.0

* Added the option to install the NetBoot/SUS/LP server using an installer
* Updated the NetBoot/SUS/LP server web application GUI to match the JSS v9.0 and later
* The NetBoot server hosted by the NetBoot/SUS/LP server now uses HTTP instead of NFS
* Updated the version of Reposado that is used by the NetBoot/SUS/LP server
* Added the option to install the NetSUS using an installer
* Updated the NetSUS web application GUI to match the JSS v9.0 and later
* The NetBoot server hosted by the NetSUS now uses HTTP instead of NFS
* Updated the version of Reposado that is used by the NetSUS
45 changes: 11 additions & 34 deletions CreateNetSUSInstaller.sh
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,6 @@ timeEcho "Building NetSUSLP Installer..."
rm -f NetSUSInstaller.run 2>&1 > /dev/null
rm -Rf temp 2>&1 > /dev/null

#mkdir temp
#cp -R base temp
#cp -R NetBoot temp
#cp -R SUS temp
#cp -R webadmin temp
#cp -R LDAPProxy temp
#cp -R includes/* temp/base/
#cp -R includes/* temp/NetBoot/
#cp -R includes/* temp/SUS/
#cp -R includes/* temp/webadmin/
#cp -R includes/* temp/LDAPProxy/
mkdir -p temp/installer/checks
mkdir -p temp/installer/resources
mkdir -p temp/installer/utils
Expand All @@ -37,47 +26,35 @@ cp -R includes/logger.sh temp/installer/utils/logger.sh
cp -R LDAPProxy/etc/ldap/* temp/installer/resources
cp -R LDAPProxy/LDAPProxyInstall.sh temp/installer/install-proxy.sh
cp -R NetBoot/netbootInstall.sh temp/installer/install-netboot.sh
cp -R NetBoot/usr/local/sbin temp/installer/resources/dhcp
cp -R NetBoot/var/appliance/conf/dhcpd.conf temp/installer/resources/dhcpd.conf
cp -R NetBoot/var/appliance/configurefornetboot temp/installer/resources/configurefornetboot
cp -R NetBoot/etc/init.d/pybsdp temp/installer/resources/pybsdp.ubuntu
cp -R NetBoot/etc/rc.d/init.d/pybsdp temp/installer/resources/pybsdp.rhel
cp -R NetBoot/usr/local/lib temp/installer/resources/lib
# cp -R NetBoot/usr/local/sbin temp/installer/resources/dhcp
# rm -f NetBoot/usr/local/sbin temp/installer/resources/dhcp/pybsdp
cp -R NetBoot/usr/local/sbin/pybsdp temp/installer/resources/pybsdp
# cp -R NetBoot/var/appliance/conf/dhcpd.conf temp/installer/resources/dhcpd.conf
# cp -R NetBoot/var/appliance/configurefornetboot temp/installer/resources/configurefornetboot
cp -R NetBoot/var/appliance/libdb4-4.8.30-21.fc26.x86_64.rpm temp/installer/resources/libdb4-4.8.30-21.fc26.x86_64.rpm
cp -R NetBoot/var/appliance/nbi_settings.py temp/installer/resources/nbi_settings.py
cp -R NetBoot/var/appliance/netatalk-2.2.0-2.el6.x86_64.rpm temp/installer/resources/netatalk-2.2.0-2.el6.x86_64.rpm
cp -R NetBoot/var/appliance/netatalk-2.2.3-9.fc20.x86_64.rpm temp/installer/resources/netatalk-2.2.3-9.fc20.x86_64.rpm
cp -R SUS/susInstall.sh temp/installer/install-sus.sh
cp -R SUS/var/appliance/sus_sync.py temp/installer/resources/sus_sync.py
cp -R SUS/var/appliance/* temp/installer/resources
cp -R SUS/var/lib/reposado temp/installer/resources/reposado
mv -f temp/installer/resources/reposado/preferences.plist temp/installer/resources/preferences.plist
cp -R webadmin/webadminInstall.sh temp/installer/install-webadmin.sh
cp -R webadmin/var/appliance/dialog.sh temp/installer/resources/dialog.sh
cp -R webadmin/var/www temp/installer/resources/html
rm -f temp/installer/resources/html/webadmin/scripts/netbootname.py
if [ -x "/usr/bin/xattr" ]; then find temp -exec xattr -c {} \; ;fi # Remove OS X extended attributes
find temp -name .DS_Store -delete # Clean out .DS_Store files
find temp -name .svn | xargs rm -Rf # Clean out SVN garbage


# Generate NetBoot App sub-installer
#timeEcho "Creating NetBoot sub-installer..."
#bash makeself/makeself.sh temp/NetBoot/ temp/base/netbootInstall.run "NetBoot Installer" "bash netbootInstall.sh" > /dev/null

# Generate SUS sub-installer
#timeEcho "Creating SUS sub-installer..."
#bash makeself/makeself.sh temp/SUS/ temp/base/susInstall.run "SUS Installer" "bash susInstall.sh" > /dev/null

# Generate webadmin sub-installer
#timeEcho "Creating webadmin sub-installer..."
#bash makeself/makeself.sh temp/webadmin/ temp/base/webadminInstall.run "WebAdmin Installer" "bash webadminInstall.sh" > /dev/null

# Generate LDAP Proxy sub-installer
#timeEcho "Creating LDAP Proxy sub-installer..."
#bash makeself/makeself.sh temp/LDAPProxy/ temp/base/LDAPProxyInstall.run "LDAP Proxy Installer" "bash LDAPProxyInstall.sh" > /dev/null

# Generate final installer
timeEcho "Creating final installer..."
#bash makeself/makeself.sh temp/base/ NetSUSLPInstaller.run "NetSUSLP Installer" "bash NetSUSInstaller.sh"
bash makeself/makeself.sh temp/installer/ NetSUSLPInstaller.run "NetSUSLP Installer" "bash install.sh"

timeEcho "Cleaning up..."
#cp temp/*/*.run . # Uncomment this if you want to test the sub-installers outside of the main installer
rm -Rf temp 2>&1 > /dev/null
timeEcho "Finished creating the NetSUS Installer. "

Expand Down
4 changes: 3 additions & 1 deletion LDAPProxy/LDAPProxyInstall.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ apt_install() {
if [[ $(apt-cache -n search ^${1}$ | awk '{print $1}' | grep ^${1}$) == "$1" ]] && [[ $(dpkg -s $1 2>&- | awk '/Status: / {print $NF}') != "installed" ]]; then
apt-get -qq -y install $1 >> $logFile 2>&1
if [[ $? -ne 0 ]]; then
log "Failed to install ${1}"
exit 1
fi
fi
Expand All @@ -16,6 +17,7 @@ yum_install() {
if yum -q list $1 &>- && [[ $(rpm -qa $1) == "" ]] ; then
yum install $1 -y -q >> $logFile 2>&1
if [[ $? -ne 0 ]]; then
log "Failed to install ${1}"
exit 1
fi
fi
Expand Down Expand Up @@ -90,7 +92,7 @@ if [ -d "/etc/openldap" ]; then
modutil -create -dbdir /etc/openldap/certs -force
openssl pkcs12 -inkey /var/appliance/conf/appliance.private.key -in /var/appliance/conf/appliance.certificate.pem -export -out /tmp/openldap.p12 -nodes -name 'LDAP-Certificate' -password pass:
certutil -A -d /etc/openldap/certs -n "CA Chain" -t CT,, -a -i /var/appliance/conf/appliance.chain.pem
expect -c 'log_user 0; spawn pk12util -i /tmp/openldap.p12 -d /etc/openldap/certs -W ""; expect "Enter new password: "; send "netsuslp\r"; expect "Re-enter password: "; send "netsuslp\r"'
expect -c 'log_user 0; spawn pk12util -i /tmp/openldap.p12 -d /etc/openldap/certs -W ""; expect "Enter new password: "; send "netsuslp\r"; expect "Re-enter password: "; send "netsuslp\r"' 2>/dev/null
rm -f /tmp/openldap.p12
chown -R ldap:ldap /etc/openldap/certs/
fi
Expand Down
1 change: 1 addition & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Copyright (C) 2012, JAMF Software, LLCAll rights reserved.SUPPORT FOR THIS PROGRAMThis program is distributed "as is" by JAMF Software, LLC. For more information or support for the appliance, please utilize the following resources: https://jamfnation.jamfsoftware.com/Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.* Neither the name of the JAMF Software, LLC nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.THIS SOFTWARE IS PROVIDED BY JAMF SOFTWARE, LLC "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JAMF SOFTWARE, LLC BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Expand Down
45 changes: 0 additions & 45 deletions NetBoot/etc/default/netatalk

This file was deleted.

6 changes: 0 additions & 6 deletions NetBoot/etc/default/tftpd-hpa

This file was deleted.

57 changes: 57 additions & 0 deletions NetBoot/etc/init.d/pybsdp
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#!/bin/sh

### BEGIN INIT INFO
# Provides: pybsdp
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: BSDP NetBoot Service
# Description: pybsdp provides the Boot Service Discovery Protocol (BSDP)
# server.
### END INIT INFO

EXEC=/usr/local/sbin/pybsdp
NAME=pybsdp

# Add any command line options for your daemon here
OPTS=""

# This next line determines what user the script runs as.
USER=root

# The process ID of the script when it runs is stored here:
PIDFILE=/var/run/$NAME.pid

. /lib/lsb/init-functions

case "$1" in

start)
log_daemon_msg "Starting $NAME daemon"
start-stop-daemon --start --background --pidfile $PIDFILE --make-pidfile --user $USER --chuid $USER --startas $EXEC -- $OPTS
log_end_msg $?
;;

stop)
log_daemon_msg "Stopping $NAME daemon"
start-stop-daemon --stop --pidfile $PIDFILE --retry 10
log_end_msg $?
;;

restart|reload|force-reload)
$0 stop
$0 start
;;

status)
status_of_proc "$NAME" "$EXEC" && exit 0 || exit $?
;;

*)
echo "Usage: /etc/init.d/$NAME {start|stop|restart|status}"
exit 1
;;

esac
exit 0
119 changes: 0 additions & 119 deletions NetBoot/etc/netatalk/AppleVolumes.default

This file was deleted.

Loading

0 comments on commit 286eee8

Please sign in to comment.