---
title: Installing PingID SSH using source files
description: Install PingID Secure Shell (SSH) using source files.
component: pingid
page_id: pingid:pingid_integrations:pid_installing_ssh_using_source_files
canonical_url: http://docs.pingidentity.com/pingid/pingid_integrations/pid_installing_ssh_using_source_files.html
revdate: July 2, 2024
section_ids:
  before-you-begin: Before you begin
  about-this-task: About this task
  steps: Steps
  result: Result:
  example: Example:
---

# Installing PingID SSH using source files

Install PingID Secure Shell (SSH) *(tooltip: \<div class="paragraph">
\<p>Protocol for secure operation of network services over an unsecured network.\</p>
\</div>)* using source files.

## Before you begin

Verify that you have already installed the following prerequisite software packages:

* make

* c compiler

* [autoconf](http://www.gnu.org/software/autoconf/autoconf.html)

* [automake](https://www.gnu.org/software/automake)

* [libtool](http://www.gnu.org/software/libtool)

* [OpenSSL](http://openssl.org/) development version (version 1.1.1 or later)

* [libCURL](http://curl.haxx.se/download.html) development version (use version 7.2.1.3 or later for PingID SSH 4.0.16 or later)

* [libPAM](http://pam.sourceforge.net/) development version. This is an optional dependency.

|   |                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| - | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|   | Installation from operating system-specific source packages is covered here:* Red Hat: [Installation example for Red Hat](pid_installation_example_red_hat.html)

* Ubuntu/Debian: [Installation example for Ubuntu/Debian (64 bit)](pid_installation_example_ubuntu_debian.html)

* Solaris: [Installation example for Solaris](pid_installation_example_solaris.html)Follow the steps shown below for other Unix/Linux flavors. |

## About this task

To install PingID SSH from the source package:

## Steps

1. Get the latest version of the package from <https://www.pingidentity.com/en/resources/downloads/pingid.html>

2. Extract the package.

3. Go to the directory of the extracted PingID package:

   ```
   cd pingid-<version>
   ```

4. Run the configuration utility:

   ```
   ./configure --with-pam --prefix=/usr
   ```

   In CentOS 7 & RHEL 7, when SELinux is installed, you might need to add this parameter to the `configure` command: `--enable-selinux`. See [SELinux section in PingID SSH support information](pid_ssh_support_information.html).

   |   |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   | - | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
   |   | When running the `./configure` command, there is an option to specify that the `use_base64_key` field in the PingID properties file should be obfuscated. To use this option, include the `--with-obfuscation` switch.If you have `openssl` and `base64` installed, the key required for obfuscation will be generated automatically so you can just use the following syntax:```
   ./configure --with-obfuscation
   ```If you don't have `openssl` and `base64` installed, this command results in an error message. In this case, you can generate the key manually and then use `--with-obfuscation` as follows:```
   ./configure --with-obfuscation=<keyToUse>
   ``` |

5. Build and install PingID SSH:

   ```
   make
   ```

   ```
   sudo make install
   ```

   The following files will be installed, assuming the `configure` command was executed with the `--prefix=/usr` parameter:

   * `/usr/sbin/pingid_fc`

   * `/usr/etc/pingid/pingid.conf`

     (`/etc/pingid/pingid.conf` on [FHS-compliant](https://www.debian.org/doc/packaging-manuals/fhs/fhs-3.0.html) systems)

   * If PAM was enabled, depending on the platform architecture:

     * `/lib64/security/pam_pingid.so` or

     * `/lib/security/pam_pingid.so`

   For more about installation directories, see [autoconf installation directories](https://www.gnu.org/prep/standards/html_node/Directory-Variables.html).

6. Test the installation:

   ```
   pingid_fc -v
   ```

   ### Result:

   You should see output similar to the following:

   ```
   PingID API version 4.0 (Package version 4.0.7)
   Configuration file: /usr/etc/pingid/pingid.conf
   ```

7. Download the relevant PingID properties file (see [Integrate PingID with SSH](pid_integration_with_ssh_intro.html)).

8. Copy the properties file to `/usr/etc/pingid/pingid.properties`.

   ### Example:

   ```
   sudo cp pingid.properties /usr/etc/pingid/pingid.properties
   ```

   |   |                                                      |
   | - | ---------------------------------------------------- |
   |   | Do not make any changes to the contents of the file. |
