Your environment may require you to manually install Linux to monitor your devices. Learn how to manually install Linux on your device using a variety of methods, and verify installation.
Before using the Linux agent, learn about supported Linux versions and installation prerequisites. For a complete list of supported versions, see Agent Compatibility, System Requirements, and Impacts.
For information on installing the JumpCloud agent, see Install the Agent from the User Portal.
New remote employees? No problem. You can enable remote installation of the JumpCloud agent from the User Portal, making it easy for new remote employees to install the agent on their work computers from home. See Enable Users to Install the Agent.
Prerequisites
- A supported Linux version
- Local administrator with Sudo access to the system(s).
- An Internet connection with the ability to connect to https://agent.jumpcloud.com:443.
Manually Installing the Linux Agent
To install the Linux agent manually:
- Log in to the JumpCloud Admin Portal: https://console.jumpcloud.com/login.
- Go to DEVICE MANAGEMENT > Devices.
- Click ( + ).
- On the New Device panel, select Linux.
- Copy the Install Command.
- Log in to a Linux device as an administrator.
- Open the terminal, then paste and run the install command.
- The installer will:
- Check for compatibility.
- Check to ensure the device clock is accurate.
- Generate a private key and certificate signing request, used for secure communications with the JumpCloud.
- Install dependencies.
- Download the JumpCloud agent.
- Create a “jcagent” service, which will be configured to run at boot.
- Start the agent.
Installing the JumpCloud Agent Using Puppet
To install the Linux agent using Puppet, run the following manifest:
package { ['curl', 'bash'] :
ensure => present,
} ->
exec { 'agent_install' :
command => "curl -sS -H 'x-connect-key: your-connect-key-goes-here' https://kickstart.jumpcloud.com/Kickstart| bash",
path => [ '/sbin', '/bin', '/usr/sbin', '/usr/bin' ],
timeout => 600,
creates => '/opt/jc'
}
Installing the JumpCloud Agent Using Chef
To install the Linux agent using Chef, run the following recipe:
package 'curl'
package 'sudo'
package 'bash'
execute 'agent_install' do
command "curl --tlsv1.2 --silent --show-error --header 'x-connect-key: your-connect-key-goes-here' 'https://kickstart.jumpcloud.com/Kickstart ' | sudo bash"
path [ '/sbin', '/bin', '/usr/sbin', '/usr/bin' ]
timeout 600
creates '/opt/jc'
end
Installing the JumpCloud Agent Using Ansible
Note: For third-party Ansible roles, go to: https://github.com/shrikeh/ansible-jumpcloud.
To install the Linux agent using Ansible, run the following playbook:
- hosts: all
sudo: yes
tasks:
- name: Install curl package (Debian based)
action: apt pkg='curl' state=installed
when: "'$ansible_pkg_mgr' == 'apt'"
- name: Install curl package (RedHat based)
action: yum name='curl' state=installed
when: "'$ansible_pkg_mgr' == 'yum'"
- name: Check if JumpCloud is already installed
shell: "[ -d /opt/jc ] && echo 'Found' || echo ''"
register: jc_installed
- name: Update time
shell: "ntpdate -u pool.ntp.org"
when: "not jc_installed.stdout"
- name: Install JumpCloud
shell: "curl --header 'x-connect-key: your-connect-key-goes-here' https://kickstart.jumpcloud.com/Kickstart | sudo bash"
when: "not jc_installed.stdout"
Verifying Linux Agent Installation from Terminal
To verify or change status in Linux from terminal, run the following command as root:
[root@host ~]# service jcagent status
jcagent.service - JumpCloud Agent
Loaded: loaded (/usr/lib/systemd/system/jcagent.service; enabled; vendor preset: disabled)
Active: inactive (dead) since Thu 2016-09-01 13:27:16 MDT; 3h 26min ago
Docs: http://support.jumpcloud.com/knowledgebase
Main PID: 890 (code=exited, status=0/SUCCESS)
Here is what the process should look like:
[root@host ~]# ps -aufx | grep jumpcloud
root 2272 0.0 0.1 3840 1292 ? Sl 13:27 0:00 /opt/jc/bin/agent-monitor -exec=/opt/jc/bin/jumpcloud-agent -conf=/opt/jc/jcagent.conf
root 2275 0.0 1.6 682980 16400 ? Sl 13:27 0:03 \_ /opt/jc/bin/jumpcloud-agent -conf=/opt/jc/jcagent.conf
To check the agent’s service status:
service jcagent status
For newer devices with systemd, you can also use systemctl:
systemctl status jcagent
Verifying Linux Agent Installation from the Admin Portal
To verify the Linux Agent installation from the Admin Portal:
- Log in to the JumpCloud Admin Portal: https://console.jumpcloud.com.
- Go to DEVICE MANAGEMENT > Devices.
- In the Devices list, the Status of the new device will have a green check mark next to it if added successfully.
Reducing Agent Install Time on Linux
On hosts that are fully up to date, installing the JumpCloud agent should take less than a minute. However, in the case of small/micro instances, where network bandwidth is limited, or where a system is out of date, you can take steps to reduce agent install time significantly.
Make sure to run on Ubuntu/Debian or RHEL/Cent/Amazon Linux, respectively:
apt-get update
or
yum check-update
After making sure the system is up to date, preinstall agent dependencies. A list of dependencies is maintained in Agent Compatibility, System Requirements, and Impacts.