Enabling SSL using a self-signed certificate
In this topic
- Create a new self-signed certificate
- Configure ArcGIS Server to use the SSL certificate
- Configure each GIS server in your deployment
- Enable SSL for your site
- Access your site using SSL
- Import the certificate into the OS certificate store
This topic shows you how you can enable SSL for ArcGIS Server using a self-signed certificate. The following steps enable SSL using a self-signed certificate:
Create a new self-signed certificate
- Log in to the ArcGIS Server Administrator Directory at http://gisserver.domain.com:6080/arcgis/admin.
- Browse to machines > [machine name] > sslcertificates.
- Click generate.
- Provide values for the parameters on this page:
Option Description Alias
A unique name that easily identifies the certificate.
Key Algorithm
Use RSA (the default) or DSA.
Key Size
Specifies the size in bits to use when generating the cryptographic keys used to create the certificate. The larger the key size, the harder it is to break the encryption; however, the time to decrypt encrypted data increases with key size. For DSA, the key size can be between 512 and 1,024. For RSA, the recommended key size is 2,048 or greater.
Signature Algorithm
Use the default (SHA1withRSA). If your organization has specific security restrictions, then one of the following algorithms can be used for DSA: SHA256withRSA, SHA384withRSA, SHA512withRSA, SHA1withDSA.
Common Name
Use the domain name of your server name as the common name.
If your server will be accessed on the Internet through the URL https://www.gisserver.com:6443/arcgis/, use www.gisserver.com as the common name.
If your server will only be accessible on your local area network (LAN) through the URL https://gisserver.domain.com:6443/arcgis, use gisserver as the common name.
Organizational Unit
The name of your organizational unit, for example, GIS Department.
Organization
The name of your organization, for example, Esri.
City or Locality
The name of the city or locality, for example, Redlands.
State or Province
The full name of your state or province, for example, California.
Country Code
The abbreviated code for your country, for example, US.
Validity
The total time in days during which this certificate will be valid, for example, 365.
Subject Alternative Name
The subject alternative name (SAN) is an optional parameter that defines alternatives to the common name (CN) specified in the SSL certificate. There cannot be any spaces in the SAN parameter value.
If no SAN is defined, a website can only be accessed (without SSL certificate errors) by using the common name in the URL. If a SAN is defined and a DNS name is present, the website can only be accessed by what is listed in the SAN. Multiple DNS names can be specified if desired. For example, the URLs https://www.esri.com, https://esri, and https://10.60.1.16 can be used to access the same site if the SSL certificate is created using the following SAN parameter value:
DNS:www.esri.com,DNS:esri,IP:10.60.1.16
- Click Generate to generate the certificate.
Configure ArcGIS Server to use the SSL certificate
To specify the SSL certificate that ArcGIS Server should use, complete the following steps:
- Log in to the ArcGIS Server Administrator Directory at http://gisserver.domain.com:6080/arcgis/admin.
- Browse to machines > [machine name].
- Click edit.
- Type the name of the SSL certificate that you want to use in the Web server SSL Certificate field.
- Click Save Edits to apply your change.
- On the current page, view the property Web server SSL Certificate to verify that the desired SSL certificate will be used for SSL.
Configure each GIS server in your deployment
If you have a multiple-machine deployment of ArcGIS Server, you must create a new self-signed certificate for each GIS server that participates in your site and configure that GIS Server to use the certificate.
Enable SSL for your site
- Log in to the ArcGIS Server Administrator Directory at http://gisserver.domain.com:6080/arcgis/admin.
- Browse to security > config > update.
- For the Protocol parameter, choose the HTTP and HTTPS option, and click Update. This automatically restarts your ArcGIS Server site.
- After your site is restarted, verify that you can access the URL https://gisserver.domain.com:6443/arcgis/admin. If you do not get a response from this URL, ArcGIS Server was unable to use the specified SSL certificate. Check your SSL certificate, and configure ArcGIS Server to use a new or different SSL certificate.
- If you can access the URL https://gisserver.domain.com:6443/arcgis/admin, browse to security > config > update.
- For the Protocol parameter, choose the HTTPS Only option, and click Update.
Note:
It takes ArcGIS Web Adaptor one minute to recognize changes to the communication protocol of your site.
Legacy:
At 10.2.1 and earlier versions, you were required to reconfigure ArcGIS Web Adaptor after updating the communication protocol of ArcGIS Server. At 10.2.2 and later versions, this is no longer necessary.
Access your site using SSL
Once SSL has been configured, ArcGIS Server listens on port 6443 for HTTPS requests. Use the URLs below to securely access ArcGIS Server:
ArcGIS Server Manager | https://gisserver.domain.com:6443/arcgis/manager |
ArcGIS Server Services Directory | https://gisserver.domain.com:6443/arcgis/rest/services |
Note:
If you rename ArcGIS Server while SSL is enabled, you can continue to access ArcGIS Server using SSL; however, you must generate a new SSL certificate and configure ArcGIS Server to use it.
Import the certificate into the OS certificate store
For ArcGIS services such as the PrintingTools service to work with an SSL-enabled ArcGIS Server, the server's SSL certificate must be installed as a trusted certificate:
- Log in to the ArcGIS Server Administrator Directory.
- Browse to machines > [machine name] > sslcertificates.
- Click the SSL certificate being used by ArcGIS Server and click export. Save the file to the location where CA root certificates are stored on your computer.
- On the machine hosting ArcGIS Server, open the init_user_param.sh script in a text editor by browsing to the <ArcGIS Server installation directory>/arcgis/server/usr directory.
- Locate the line export CA_ROOT_CERTIFICATE_DIR=<Location_to_CA_Root_Certificate> and specify a location where all CA root certificates are stored on the system. Note that the specified directory needs to be accessible by the account that was used to install ArcGIS Server. You'll need to uncomment the lines by removing the pound sign (#) characters.
- Save and close the init_user_param.sh script.
- Restart ArcGIS Server. You can do this by running the startserver.sh script on each GIS server in your site.
- Repeat the above steps for each GIS server in your site.