Redshift cluster is configured to use a non-default port for communication



Confirm Redshift clusters are not using default port 5439 to protect against non-targeted attacks.


Using a custom port can protect your publicly accessible AWS Redshift clusters against potential brute-force and dictionary attacks. Although setting a custom port can help fend off these attacks, it is also recommended to restrict public access, use SSL to encrypt client connections to database clusters, and control cluster access through security groups and Network Access Control Lists (NACLs) to add an additional layer of security for your account.


From the console

Follow the [Getting information about cluster configuration][7] docs to access your cluster configuration information. If the cluster has a port 5439, it is the default port. Modify the port number in the console.

From the command line

  1. Run describe-clusters with a cluster-identifier to retrieve cluster metadata.

        aws redshift describe-clusters
    	    --cluster-identifier cluster-name
  2. Run create-cluster-snapshot with create a snapshot of your database cluster.

        aws redshift create-cluster-snapshot
            --cluster-identifier cluster-name
            --snapshot-identifier snapshot-identifier
  3. Run restore-from-cluster-snapshot to create a new cluster from the snapshot created above. Use the retrieved metadata in step one to configure a new port number.

        aws redshift restore-from-cluster-snapshot
            --cluster-identifier cluster-name
            --snapshot-identifier snapshot-identifier
            --port 2000