GithubHelp home page GithubHelp logo

nesteph / jss-in-a-box Goto Github PK

View Code? Open in Web Editor NEW

This project forked from franton/jss-in-a-box

0.0 1.0 0.0 138 KB

The Casper Suite setup script

Home Page: http://www.richard-purves.com/?p=136

License: MIT License

Shell 100.00%

jss-in-a-box's Introduction

JSS-In-A-Box

The (almost) complete Casper 9 JSS setup script

Introduction

This is the (almost) complete setup script for JAMF Software's JSS server. It will perform the following tasks :-

  1. Install and configure all the software packages required to run the JSS
  2. Harden the server via software firewall and optional HTTPS certificates
  3. Show all currently running JSS on the server
  4. Create a new JSS and Database
  5. Delete an existing JSS and Database
  6. Dump a selected (or ALL) JSS database to a file
  7. Upload a database file back into MySQL
  8. Upgrade a single JSS install on the server
  9. Upgrade ALL JSS installs on the server
  10. (optional) Refresh Tomcat SSL certificate from LetsEncrypt (The LetsEncrypt certificates are automatically renewed via a cron job. The same code can be invoked manually with this option)
  11. Will now optimally configure Tomcat and MySQL (locally only) for number of instances, available ram etc etc. (this one was HARD to do)

The only things it doesn't do are:

  1. Set up anything to do with load balancing. That can be done inside the JSS itself.
  2. Any remote server configuration with the sole exception of modifying remote databases.
  3. Clustered server setup.
Oh, and NO SNEAKY using this on your CJA course! I've tipped off the JAMF instructors I know of!

Getting started

This assumes you have an either an Ubuntu 14.04 LTS or a RedHat 7.x server installed with openssh. This also assumes the server is properly configured to see the internet and has a properly set up DNS hostname.

Please do NOT use Ubuntu's minimal iso install. This will miss out lots of key software and this script will fail. Use the "server" download instead.

  1. Download the proper script depending on which Linux distribution you are using.
  2. Edit the jss-in-a-box.sh script variables in line with your own security policies
  • Server admin username
  • Use LetsEncrypt (if this is set to FALSE, then the JSS will be set up without HTTPS)
  • SSL Domain name for the server
  • SSL E-mail address to register with the LetsEncrypt CA
  • SSL Keypass password
  • MySQL root password
  • MySQL server address
  • JSS database username
  • JSS database password
  1. Edit the jss-in-a-box.sh script firewall settings.
  2. scp the ROOT.war file supplied by JAMF to the server
  3. scp the jss-in-a-box.sh script over to the server
  4. Run the script with sudo. e.g. sudo ./jss-in-a-box.sh
  5. Follow the options! (They are all disabled until no.1 is run successfully).

You should, depending on server and internet speed have a fully functioning JSS running inside of an hour. Probably less.

(Optional) Run the script with sudo ./jss-in-a-box.sh -h to get a help prompt.

The instructional video below provides more details of operation. NOTE: This is of an earlier version but the info is still valid.

Instructional Video

JSS in a Box

Software Installed

  • JSS
  • Git (used purely for installing LetsEncrypt)
  • Unzip
  • Uncomplicated Firewall (Ubuntu) / FirewallD (Redhat)
  • OpenSSL
  • OpenVMTools
  • Oracle Java 8 (Ubuntu) / openjdk 8 (Redhat)
  • Java Cryptography Extensions
  • Apache Tomcat 8
  • MySQL Server 5.6
  • (optional) LetsEncrypt

jss-in-a-box's People

Contributors

franton avatar rderewianko avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.