Select any two versions of this STIG to compare the individual requirements
Select any old version/release of this STIG to view the previous requirements
Validate the Jamf Pro EMM server has been configured to not accept a certificate if the certificate cannot be validated. 1. Open the Jamf Pro EMM console. 2. Open "Settings". 3. Select "User-Initiated Enrollment". 4. Under the General tab, verify "Use a third-party signing certificate" is selected. 5. Verify the name and certificate extension of the DoD p12 certificate is listed. If the Jamf Pro EMM server has been not been configured to not accept a certificate if the certificate cannot be validated, this is a finding.
Configure the Jamf Pro EMM server to not accept a certificate if the certificate cannot be validated. 1. Open the Jamf Pro EMM console. 2. Open "Settings". 3. Select "User-Initiated Enrollment". 4. Under the General tab, select "Use a third-party signing certificate". 5. Drag and drop the DoD p12 certificate. 6. Click "Save".
Verify the Jamf Pro EMM server or platform is configured to initiate a session lock after a 15-minute period of inactivity. Review the variable in the Jamf Pro web.xml file. On the Jamf Pro host server, open the web.xml file: If using macOS, the web.xml file is located at the following filepath: /Library/JSS/Tomcat/webapps/ROOT/WEB-INF/ If using Windows, the web.xml file is located at the following filepath: C:\Program Files\JSS\Tomcat\webapps\ROOT\WEB-INF\ If using Linux, the web.xml file is located at the following filepath: /usr/local/jss/tomcat/webapps/ROOT/WEB-INF/ Locate the following setting: <session-config> <session-timeout>15</session-timeout> </session-config> Ensure that the code is not commented out. If the code is commented out, remove the comment tags <!-- --> that encase the code. Note: Session timeout is in minutes. If the code is commented out or session-timeout is not configured to "15" minutes or less, this is a finding.
Perform the following procedure to configure the Jamf session lock to lock after a 15-minute period of inactivity. Configuring the Variable in the JAMF web.xml File On the Jamf Pro EMM host server, open the web.xml file: If using macOS, the web.xml file is located at the following filepath: /Library/JSS/Tomcat/webapps/ROOT/WEB-INF/ If using Windows, the web.xml file is located at the following filepath: C:\Program Files\JSS\Tomcat\webapps\ROOT\WEB-INF\ If using Linux, the web.xml file is located at the following filepath: /usr/local/jss/tomcat/webapps/ROOT/WEB-INF/ Locate the following setting: <session-config> <session-timeout>1</session-timeout> </session-config> Ensure that the code is not commented out. If the code is commented out, remove the comment tags <!-- --> that encase the code. Modify the session-timeout to a value from 1 to 15. Note: Session timeout is in minutes. Restart Tomcat after modifying anything within the web.xml file. See Starting and Stopping Tomcat for instructions in the Jamf admin guide.
Verify Jamf Pro is utilizing an External CA for signing communication to mobile devices: 1. Open Jamf Pro server. 2. Open "Settings". 3. Select "PKI Certificates". 4. Select "Management Certificate Template". 5. Select "External CA" tab. 6. Verify the "Use a SCEP-enabled external CA for computer and mobile device enrollment" is enabled. 7. Verify that the Signing Certificate is listed at the bottom of the page. If these settings are confirmed, Jamf Pro is set to use an external CA. If Jamf Pro is not configured to use an External CA for signing communication to mobile devices, this is a finding.
Configure the following settings within the Jamf Pro EMM server for ensuring an authorized DoD certificate is used for signing enrollment and configuration profiles: 1. Open Jamf Pro server. 2. Open "Settings". 3. Open "PKI Certificates". 4. Select "Management Certificate Template" tab. 5. Select "External CA" tab. 6. Select "Edit". 7. Select to use SCEP-enabled external CA for computer and mobile device enrollment. 8. Enter all the applicable settings to connect this server to SCEP/Entrust enabled CA. 9. Select "Save". 10. At the bottom of the External CA screen, select "Change Signing and CA Certificates". 11. Follow onscreen instructions to upload the signing and CA certificates for Jamf Pro to use. Jamf Pro is now set to use an External CA for signing all communication to mobile devices.
Verify the Jamf Pro EMM server is enabled to push syslog: 1. Open Jamf Pro server. 2. Open "Settings". 3. Select "Change Management". 4. Verify the settings for Syslog Server (log file transfer to the syslog server). If the Jamf Pro EMM server is not configured to enable syslog, this is a finding.
Configure the Jamf Pro EMM server to enable syslog: 1. Open Jamf Pro server. 2. Open "Settings". 3. Select "Change Management". 4. Click "Edit". 5. Configure the settings for Syslog Server. 6. Click "Save".
Verify the Jamf Pro EMM server for customized login page: Go to /path/to/JSS/Tomcat/webapps/ROOT/WEB-INF/frontend folder. Find the login.jsp. Locate new <body> content related to customized text for DoD classification. Verify the DoD warning banner text is correct. If the Jamf Pro EMM server is not configured to display DoD warning banner when the system administrator logs on to the server, this is a finding.
Configure the Jamf Pro EMM server for customized login page: Go to /path/to/JSS/Tomcat/webapps/ROOT/WEB-INF/frontend>>Open the login.jsp with a text editor application. Scroll to the bottom of the page by the line "<input type="submit" class="button" value="log in" />" Under the </div> create a new line and paste the following: NOTE: Anything under "style" and "body" can be customized to fit your environments needs.<head> <style> p {margin-top:1em} p {margin-bottom:0em} p {color:red} p {text-align:center} p {font-family:courier} p {font-size:100%} </style> </head> <body> <p>""Place DoD warning banner first line here""</p> <p>""place second (or next) line here""</p> </body> Restart Tomcat for changes to take effect.
Administrator and Audit level permission groups are configured by default within Jamf Pro server. Verify the additional group permissions by: 1. Open Jamf Pro server. 2. Open "Settings". 3. Select "Jamf Pro User Accounts and Groups". 4. View the necessary information for each group has been created with appropriate privilege sets. Jamf Pro EMM server will have the appropriate group level permissions available for applying to individual user accounts or AD groups. If required administrator roles have not been set up on the server, this is a finding.
Administrator and Audit level permission groups are configured by default within Jamf Pro server. Configure the additional group permissions by: 1. Open Jamf Pro server. 2. Open "Settings". 3. Select "Jamf Pro User Accounts and Groups". 4. Select "New". 5. Select "Create Standard Group", click "Next". 6. Fill out all the necessary information for creating the group including the privilege set. 7. Click "Save". 8. Repeat for each group of permissions that are needed. Once completed, Jamf Pro EMM server will have the appropriate group level permissions available for applying to individual user accounts or AD groups.
Interview the site ISSM. Determine if the site has connected Jamf Pro EMM to an Authentication Gateway Service (AGS) which connects to the DoD Identity Access Management (IdAM) environment that uses CAC authentication. - If YES, verify the AGS implementation has been reviewed using the Application Layer Gateway SRG. Verify the Jamf Pro EMM server is configured to connect to the AGS: 1. Go to the server console. 2. Open "Settings". 3. Select "SSO" (Single Sign-on). 4. Verify Single Sign-on Authentication is enabled and connection to the AGS using SAML-based protocol is set up. - If NO, verify strong password controls for the administrator local accounts are in place. (Verified by JAMF-10-100700 to JAMF-10-100820.) If Jamf Pro EMM is not connected Jamf Pro EMM to an Authentication Gateway Service (AGS) which connects to your DoD Identity Access Management (IdAM) environment that utilizes CAC authentication or has not been configured to use strong password controls for the administrator local accounts, this is a finding.
Implement one of the following options: Option #1. Connect Jamf Pro EMM to an Authentication Gateway Service (AGS) which connects to the DoD Identity Access Management (IdAM) environment that uses CAC authentication. Note: Jamf requires AGS to support SAML. - Set up AGS / IdAM environment. - Connect the Jamf pro EMM to the AGS: 1. Open "Settings". 2. Select "SSO" (Single Sign-on). 3. Select "Edit". 4. Enable Single Sign-on Authentication. 5. Complete the appropriate settings to connect Jamf Pro EMM to the AGS using SAML-based protocol. 6. Click "Save". Note: If Option #1 is used, requirements JAMF-10-100700 to JAMF-10-10820 are Not Applicable and requirement JAMF-10-200040 is Applicable - Configurable. Option #2. Implement strong password policy for admin local accounts. Configure the server password policy (JAMF-10-100700 to JAMF-10-10820). Note: If Option #2 is used, requirement JAMF-10-200040 is Not Applicable.
Interview the site ISSM. Determine if the site has connected Jamf Pro EMM to an Authentication Gateway Service (AGS) which connects to the DoD Identity Access Management (IdAM) environment that uses CAC authentication. - If YES, verify the AGS implementation has been reviewed using the Application Layer Gateway SRG. Verify the Jamf Pro EMM server is configured to connect to the AGS: 1. Go to the server console. 2. Open "Settings". 3. Select "SSO" (Single Sign-on). 4. Verify Single Sign-on Authentication is enabled and connection to the AGS using SAML-based protocol is set up. - If NO, verify strong password controls for the administrator local accounts are in place. (Verified by JAMF-10-100700 to JAMF-10-100820.) If Jamf Pro EMM is not connected to an Authentication Gateway Service (AGS) which connects to the DoD Identity Access Management (IdAM) environment that uses CAC authentication or has not been configured to use strong password controls for the administrator local accounts, this is a finding.
Implement one of the following options: Option #1. Connect Jamf Pro EMM to an Authentication Gateway Service (AGS) which connects to the DoD Identity Access Management (IdAM) environment that uses CAC authentication. Note: Jamf requires AGS to support SAML. - Set up AGS/IdAM environment. - Connect the Jamf pro EMM to the AGS: 1. Open "Settings". 2. Select "SSO" (Single Sign-on). 3. Select "Edit". 4. Enable Single Sign-on Authentication. 5. Complete the appropriate settings to connect Jamf Pro EMM to the AGS using SAML-based protocol. 6. Click "Save". Note: If Option #1 is used, requirements JAMF-10-100700 to JAMF-10-10820 are Not Applicable and requirement JAMF-10-200040 is Applicable - Configurable. Option #2. Implement strong password policy for admin local accounts. Configure the server password policy (JAMF-10-100700 to JAMF-10-10820). Note: If Option #2 is used, requirement JAMF-10-200040 is Not Applicable.
Verify the installed version of Jamf Pro EMM is currently supported. On the Jamf Pro console do the following to determine the version number of the server: 1. Log in to the console. 2. View the version number listed in the upper left corner. List of current supported versions: v10.18 (End of Support Date: TBD v10.17 (TBD) v10.16 (TBD) v10.15 (TBD) v10.14 (TBD) v10.13.1 (TBD) If the displayed Jamf Pro server version is not currently supported or is not a newer version than on the list above, this is a finding.
Update the Jamf Pro EMM to a supported version (see list below) or newer version. v10.18 (End of Support Date: TBD v10.17 (TBD) v10.16 (TBD) v10.15 (TBD) v10.14 (TBD) v10.13.1 (TBD)
Verify the mysql_secure_installation has been installed on the Jamf host server. 1. Log in to MySQL. Execute the "show databases;" command. - Verify that the database named "Test" is not shown in output of the command. 2. Verify the root account has a string representing the password and not a blank value. - select * from mysql.user; 3. Verify the anonymous users have been removed and verify the user field contains a user name. - select * from mysql.user; All three steps must be correct to indicate mysql_secure_installation has been executed. If the mysql_secure_installation has not been installed on the Jamf host server, this is a finding.
Install the mysql_secure_installation. 1. Install MySQL. 2. Using the Jamf Pro Security Recommendations document, go to the path based on the host operating system and execute the appropriate mysql_secure_installation script.
Verify a unique database name and a unique MySQL user with a secure password have been created for use in Jamf Pro EMM. 1. Execute the show databases command. - Ensure at least one database name other than the default databases exits. The default databases are: infomation_schema mysql performance_schema sys 2. Verify there is a unique MySQL user. - In MySQL, run select * mysql.user; - Look for a user that is not Root or one of the other MySQL service accounts. Both of these steps must be correct. If a unique database name and a unique MySQL user with a secure password have not been created, this is a finding.
Create a unique database name and a unique MySQL user with a secure password. The procedure is found in the following Jamf Knowledge Base article: https://www.jamf.com/jamf-nation/articles/542/title
Verify separate MySQL user accounts with limited privileges have been created within Jamf Pro EMM. In MySQL, execute the following command: show grants for username@localhost; Verify the privileges match what is in the Jamf Knowledge Base article. If separate MySQL user accounts with limited privileges have not been created within Jamf Pro EMM, this is a finding.
Create separate MySQL user accounts with limited privileges within Jamf Pro EMM. The procedures for creating user accounts and assigning account privileges are found in the following Jamf Knowledge Base articles: MySQL 8.0: https://dev.mysql.com/doc/refman/8.0/en/creating-accounts.html MySQL 5.7: https://dev.mysql.com/doc/refman/5.7/en/creating-accounts.html Following is a list MySQL privileges that are required for different types of environments: - For a standalone web application or the master node in clustered environments: INSERT, SELECT, UPDATE, DELETE, CREATE, DROP, ALTER, INDEX, LOCK TABLES - For a child node in clustered environments: INSERT, SELECT, UPDATE, DELETE, DROP, LOCK TABLES - To view connections from cluster nodes with different MySQL users: PROCESS Note: The "PROCESS" privilege requires the use of "*.*".
Verify MySQL of database backups have been scheduled in Jamf Pro EMM. 1. Open "Jamf Server Tools". 2. Click "Scheduled Backups" in the sidebar. 3. Verify backups are scheduled. If MySQL of database backups have not been scheduled in Jamf Pro EMM, this is a finding.
Schedule MySQL of database backups in Jamf Pro EMM. The procedure is found in the following Jamf Knowledge Base article: https://www.jamf.com/jamf-nation/articles/579/title
Verify the MySQL <DatabasePassword> key has been removed or set to a blank value in Jamf Pro EMM. 1. On the Jamf Pro server, navigate to the JSS/Tomcat/webapps/ROOT/WEB-INF/xml. 2. Find the "Database.xml" file and open it in a text editor. 3. Find the <DatabasePassword>. 4. Verify that there is no password. If the MySQL <DatabasePassword> key has not been removed or not set to a blank value, this is a finding.
Remove the MySQL <DatabasePassword> key or set to a blank value in Jamf Pro EMM. If the database password is removed from the configuration file, the database password must be entered manually for the Jamf Pro EMM server web app during startup. In a clustered environment, the database password must be entered manually for each individual node. Note: Default values are included below for reference only. Use unique values in production environments. <Database> ... <DatabaseName>jamfsoftware</DatabaseName> <DatabaseUser>jamfsoftware</DatabaseUser> <DatabasePassword></DatabasePassword> ... </Database>
To verify the length of the local accounts password, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Verify "Minimum Password Length" is set to "15". If the "Minimum Password Length" is not set to "15", this is a finding.
To configure the length of the local accounts password, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Click "Edit". 7. Set "Minimum Password Length" to "15".
To verify the "Require lowercase character" of the local accounts password is selected, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Verify "Require lowercase character" is selected. If "Require lowercase character" is not selected, this is a finding.
To configure the "Require lowercase character" of the local accounts password, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Click "Edit". 7. Select "Require lowercase character".
To verify the "Require uppercase character" of the local accounts password is selected, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Verify "Require uppercase character" is selected. If "Require uppercase character" is not selected, this is a finding.
To configure the "Require uppercase character" of the local accounts password, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Click "Edit". 7. Select "Require uppercase character".
To verify the "Require number" of the local accounts password is selected, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Verify "Require number" is selected. If "Require number" is not selected, this is a finding.
To configure the "Require number" of the local accounts password, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Click "Edit". 7. Select "Require number".
To verify the "Require special character" of the local accounts password is selected, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Verify "Require special character" is selected. If "Require special character" is not selected, this is a finding.
To configure the "Require special character" of the local accounts password, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Click "Edit". 7. Select "Require special character".
To verify the "Minimum password Age" of "1" day for the local accounts password is set, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Verify "Minimum Password Age" is set to "1" day. If the "Minimum Password Age" is not set to "1" day, this is a finding.
To configure the "Minimum Password Age" to "1" day for the local accounts password, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Click "Edit". 7. Set the "Minimum Password Age" to "1" day.
To verify the "password maximum lifetime" of "3" months for the local account's password is set, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Verify "password maximum lifetime" of "3" months. If the "password maximum lifetime" for local account's password is not set to "3" months, this is a finding.
To configure the "password maximum lifetime" of "3" months for the local account's password, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Click "Edit". 7. Set the "password maximum lifetime" of "3" months.
To verify the local accounts "Password History" is set to a minimum of "5" generations, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Verify "Password History" to "5" or more. If "Password History" is not set to "5" or more, this is a finding.
Note: This requirement is NA if Option #1 is selected in requirement JAMF-10-000685. To configure the "Password History" of the local accounts password to a minimum of "5" generations, do the following: 1. Open the Jamf Pro EMM console. 2. Click "Settings". 3. Click "System Settings". 4. Click "Jamf Pro System User Accounts & Groups". 5. Click "Password Policy". 6. Set the "Password History" to "5" or more.
Interview the site Jamf Pro EMM system administrator. Confirm a script is used to periodically check when each local account was last accessed by the user and disable the account if there is a 35-day or more period of account inactivity. If a script is not used to periodically check when each local account was last accessed by the user and disable the account or if there is a 35-day or more period of account inactivity, this is a finding.
Note: There is no setting on the Jamf Pro EMM console to implement this requirement. A script should be used to periodically check when each local account was last accessed by the user and disable the account if there is a 35-day or more period of account inactivity. The script should be developed by the site or provided by Jamf.
To verify the Jamf Pro EMM enforces a limit of three consecutive invalid logon attempts by a user, do the following: 1. Log in to the Jamf Pro EMM console. 2. Open "Settings". 3. Select "Jamf Pro User Accounts & Groups". 4. Select "Password Policy" in the upper right corner. 5. Verify that under "Account Lockout" the number of failed attempts before lockout is set to "3" or less. If the Jamf Pro EMM does not limit the number of consecutive invalid logon attempts by a user to "3" or less, this is a finding.
To configure the Jamf Pro EMM server to lock after three consecutive invalid logon attempts by a user, do the following: 1. Open "Settings". 2. Select "Jamf Pro User Accounts & Groups". 3. Select “Password Policy” in the upper right corner. 4. Select "Edit". 5. Under “Account Lockout”, select the drop-down menu to change the number of failed attempts before lockout to "3". 6. Select “Save”.
Review the Jamf Pro EMM server platform configuration to determine whether a DoD-approved firewall is installed or if the platform operating system provides a firewall service that can restrict both inbound and outbound traffic by TCP/UDP port and IP address. If there is not a host-based firewall present on the Jamf Pro EMM server platform, this is a finding.
Install a DoD-approved firewall on the Jamf Pro EMM server.
Ask the Jamf Pro EMM server administrator for a list of ports, protocols, and IP address ranges necessary to support Jamf Pro EMM server and platform functionality. A list can usually be found in the STIG Supplemental document or Jamf Pro EMM product documentation. Compare the list against the configuration of the firewall and identify discrepancies. If the host-based firewall is not configured to support only those ports, protocols, and IP address ranges necessary for operation, this is a finding.
Configure the firewall on the Jamf Pro EMM server to only permit ports, protocols, and IP address ranges necessary for operation.
Ask the Jamf Pro EMM server administrator for a list of ports, protocols, and services that have been configured on the host-based firewall of the Jamf Pro EMM server or generate the list by inspecting the firewall. Verify all allowed ports, protocols, and services are included on the DoD PPSM CAL list. If any allowed ports, protocols, and services on the Jamf Pro EMM server host-based firewall are not included on the DoD PPSM CAL list, this is a finding.
Turn off any ports, protocols, and services on the Jamf Pro EMM server host-based firewall that are not on the DoD PPSM CAL list.
Verify all local accounts on the Jamf Pro EMM server have been disabled. Note: the server service account is not disabled. 1. Log in to the Jamf pro EMM console. 2. Open "Settings". 3. Verify all Jamf Pro User Accounts & Groups have been disabled. If all local accounts on the Jamf Pro EMM server have not been disabled, this is a finding.
Disable all local accounts on the Jamf Pro EMM server with the following procedure. Note: The server service account should not be disabled. 1. Open "Settings". 2. Select "Jamf Pro User Accounts & Groups". 3. Select the user/accounts that need to be disabled. 4. Upon selection, click on the "Edit" button. 5. Change the "Access Status" to "Disabled". 6. Click "Save". 7. Repeat steps 3-6 for all local accounts.
Talk to the site Administrator to confirm the AGS has been configured to connect to the Jamf Pro EMM server using the TLS connection or confirm during a review of the AGS. If the AGS has not been configured to connect to the Jamf Pro EMM server using a TLS connection, this is a finding.
Confirm the Administrator has configured the AGS to connect to the Jamf Pro EMM server using the TLS connection.