| 89 |   | wget https://downloads.jboss.org/keycloak/4.4.0.Final/keycloak-4.4.0.Final.tar.gz | 
          
          
            | 90 |   | tar -xvzf keycloak-4.4.0.Final.tar.gz | 
          
          
            | 91 |   | cd keycloak-4.3.0.Final/bin/ | 
          
          
            | 92 |   | ./add-user-keycloak.sh -r master -u ###UserName### -p ###Password### | 
          
          
            | 93 |   | vim standalone/configuration/standalone.xml | 
          
          
            | 94 |   | ./standalone.sh -b 0.0.0.0 & | 
          
          
            |   | 89 | We will install Keycloak in your idp vm for the lab purpose but it is recommended to install it on a separate server with at least 4GB RAM for production environment. | 
          
          
            |   | 90 |  | 
          
          
            |   | 91 | * Install Dependancies | 
          
          
            |   | 92 |    * Become the root user by `sudo su` | 
          
          
            |   | 93 |    * `apt-get install vim default-jdk` | 
          
          
            |   | 94 |    * Define the constant `JAVA_HOME` inside /etc/environment: | 
          
          
            |   | 95 |       * `update-alternatives --config java` | 
          
          
            |   | 96 |         (copy the path without /bin/java) | 
          
          
            |   | 97 |       * `vim /etc/environment` and include | 
          
          
            |   | 98 |        * `JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64` | 
          
          
            |   | 99 |       * `source /etc/environment` | 
          
          
            |   | 100 |     * `export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64` | 
          
          
            |   | 101 |  | 
          
          
            |   | 102 |  | 
          
          
            |   | 103 | * Download Keycloak and extract: | 
          
          
            |   | 104 |    *  | 
          
          
            |   | 105 |    {{{ | 
          
          
            |   | 106 |         wget https://downloads.jboss.org/keycloak/4.4.0.Final/keycloak-4.4.0.Final.tar.gz | 
          
          
            |   | 107 |    }}}  | 
          
          
            |   | 108 |    {{{ | 
          
          
            |   | 109 |         tar -xvzf keycloak-4.4.0.Final.tar.gz | 
          
          
            |   | 110 |     }}} | 
          
          
            |   | 111 |  | 
          
          
            |   | 112 | * Go to the executable directory: | 
          
          
            |   | 113 |    {{{ | 
          
          
            |   | 114 |      cd keycloak-4.3.0.Final/bin/ | 
          
          
            |   | 115 |    }}} | 
          
          
            |   | 116 |   | 
          
          
            |   | 117 | * Create Initial Admin User | 
          
          
            |   | 118 |    {{{ | 
          
          
            |   | 119 |      ./add-user-keycloak.sh -r master -u adminiam -p Iam@2018 | 
          
          
            |   | 120 |     }}} | 
          
          
            |   | 121 |  | 
          
          
            |   | 122 | * Edit listning interface: | 
          
          
            |   | 123 |    {{{ | 
          
          
            |   | 124 |        vim standalone/configuration/standalone.xml | 
          
          
            |   | 125 |    }}} | 
          
          
            |   | 126 |    look for the `interfaces` XML block    | 
          
          
            |   | 127 |    {{{#!xml | 
          
          
            |   | 128 |           <interfaces> | 
          
          
            |   | 129 |                   <interface name="management"> | 
          
          
            |   | 130 |                       <inet-address value="${jboss.bind.address.management:127.0.0.1}"/> | 
          
          
            |   | 131 |                   </interface> | 
          
          
            |   | 132 |                   <interface name="public"> | 
          
          
            |   | 133 |                       <inet-address value="${jboss.bind.address:127.0.0.1}"/> | 
          
          
            |   | 134 |                   </interface> | 
          
          
            |   | 135 |           </interfaces> | 
          
          
            |   | 136 |    }}} | 
          
          
            |   | 137 |  | 
          
          
            |   | 138 |   Change IP address `127.0.0.1` to `0.0.0.0` allowing traffic from outside. | 
          
          
            |   | 139 |  | 
          
          
            |   | 140 | * Start the server | 
          
          
            |   | 141 | {{{ | 
          
          
            |   | 142 |      ./bin/standalone.sh > /var/log/keycloak.pid | 
          
          
            |   | 143 | }}} |