Frequently Asked Questions for GoDaddy Cloud Servers

How to associate an SSH key pair with a server?

In order to use an SSH key pair to log in to a GoDaddy Cloud Server, you must first upload your public SSH key to the GoDaddy Cloud Server control panel. Following this, you can associate it with a server and use it to log in to that server.

To upload your public SSH key to the GoDaddy Cloud Server control panel, follow these steps:

  • Log in to the GoDaddy Cloud Server control panel.
  • Navigate to the "SSH Keys" section.
  • Click the "Create Key" button.

    GoDaddy key association

  • Enter a name and the content of your public key file. Click "OK" to save the key.

    GoDaddy key association

NOTE: To generate a new SSH key pair, you can use PuTTYgen (Windows) or the ssh-keygen command (Linux and Mac OS X). For instructions on how to use PuTTYgen, refer to this page. For instructions on how to use ssh-keygen, refer to this page. If using PuTTYgen to generate your SSH key, the GoDaddy Cloud Server control panel will only allow you to upload the content of the "Public key for pasting into OpenSSH authorized_keys file" field in the PuTTYgen interface.

GoDaddy key association

To associate your public SSH key with a server during the deployment process, click the "Use SSH Key" link next to the "Password" field and select the uploaded public key from the resulting drop-down list.

GoDaddy key association

How to connect to the server through SSH?

You can connect to your GoDaddy Cloud Server through a browser or with an SSH client.

Connecting through a browser

To use the browser-based console, follow these steps:

  • Log in to the GoDaddy Cloud Server control panel.
  • Navigate to the "Servers" section.
  • Select the server you wish to connect to from the list.
  • On the resulting detail page, click the "Console" tab.
  • The browser-based console will load. You will be prompted to log in using your server username. If you chose to deploy the server using a password, you will also be prompted for the password.

    PuTTY configuration

You should now be logged in to your cloud server.

Connecting with an SSH client

If connecting with an SSH client, you must have the server's IP address, username and password or, if you chose to deploy the server with an SSH key instead of a password, you must have the server username and corresponding SSH private key in .ppk format (for Windows) or in .pem format (for Linux and Mac OS X).

To obtain the IP address for your server, follow these steps:

Once you have confirmed that you have the IP address and correct SSH credentials for your server, follow the instructions below depending on the platform you wish to use:

Using an SSH Key
Windows

The easiest way to log in to your server is with PuTTY, a free SSH client for Windows and UNIX platforms.

  • Download the PuTTY ZIP archive from its website.
  • Extract the contents to a folder on your desktop.
  • Double-click the putty.exe file to bring up the PuTTY configuration window.
  • Enter the IP address of your server into the "Host Name (or IP address)" field, as well as into the "Saved Sessions" field.
  • Click "Save" to save the new session so you can reuse it later. PuTTY configuration
  • In the "Connection -> SSH -> Auth" section, select your private key file (.ppk). PuTTY configuration
  • In the "Connection -> Data" section, enter the server username into the "Auto-login username" field. PuTTY configuration
  • Go back to the "Session" section and save your changes by clicking the "Save" button.
  • Click the "Open" button to open an SSH session to the server.
  • PuTTY will first ask you to confirm the server's host key and add it to the cache. Go ahead and click "Yes" to this request (learn more). PuTTY connection

You should now be logged in to your server.

Linux and Mac OS X

Linux and Mac OS X come bundled with SSH clients by default.

  • Set the permissions for your private key file to 0600 using a command like the one below:

     $ chmod 600 KEYFILE
    
  • Open a new terminal.
  • Connect to the server using the command below:

      $ ssh -i KEYFILE USERNAME@100.101.102.103
    

    Remember to replace KEYFILE in the previous commands with the path to your private key file (.pem), USERNAME with the server username, and 100.101.102.103 with the public IP address or hostname of your server.

  • Your SSH client might ask you to confirm the server's host key and add it to the cache before connecting. Accept this request by typing or selecting "Yes" (learn more).

You should now be logged in to your server.

Using a Password
Windows

The easiest way to log in to your server is with PuTTY, a free SSH client for Windows and UNIX platforms.

  • Download the PuTTY ZIP archive from its website.
  • Extract the contents to a folder on your desktop.
  • Double-click the putty.exe file to bring up the PuTTY configuration window.
  • Enter the IP address of your server into the "Host Name (or IP address)" field, as well as into the "Saved Sessions" field.
  • Click "Save" to save the new session so you can reuse it later. PuTTY configuration
  • In the "Connection -> Data" section, enter the server username into the "Auto-login username" field. PuTTY configuration
  • Go back to the "Session" section and save your changes by clicking the "Save" button.
  • Click the "Open" button to open an SSH session to the server.
  • PuTTY will first ask you to confirm the server's host key and add it to the cache. Go ahead and click "Yes" to this request (learn more). PuTTY connection
  • PuTTY will prompt for your server password now. Enter this password.

You should now be logged in to your server.

Linux and Mac OS X

Linux and Mac OS X come bundled with SSH clients by default.

  • Open a new terminal.
  • Connect to the server using the command below:

      $ ssh USERNAME@100.101.102.103
    

    Remember to replace USERNAME with the server username, and 100.101.102.103 with the public IP address or hostname of your server.

  • Your SSH client might ask you to confirm the server's host key and add it to the cache before connecting. Accept this request by typing or selecting "Yes" (learn more).
  • PuTTY will prompt for your server password now. Enter this password.

You should now be logged in to your server.

What is the directory structure?

The installation process will create several sub-directories under the /opt/bitnami directory:

  • Servers and related tools: apache2/, mysql/, postgresql/, apache-tomcat/, etc.
  • Languages: php/, python/, ruby/, tcl/, etc.
  • Application files: apps/phpMyAdmin/, apps/drupal/, apps/joomla/, apps/redmine/, etc.
  • Common libraries: common/
  • Licenses of the components included in the stack: licenses/

Application files are stored in the /opt/bitnami/apps/APPNAME/htdocs directory. The configuration file for the Apache Web server is stored in the /opt/bitnami/apps/APPNAME/conf/ directory.

What is a Bitnami image?

A Bitnami image includes everything you need to run your Bitnami-packaged application of choice. The installation and configuration of all of the software included in the stack is completely automated, making it easy for everyone, including those who are not very technical, to get them up and running.

All Bitnami images are completely self-contained and run independently of the rest of the software or libraries installed on your system. This means that you don't have to worry about installing any other software on your system to make the new application work. They also won't interfere with any software already installed on the system, so everything will continue to work normally.

How to start or stop the servers?

Each Bitnami stack includes a control script that lets you easily stop, start and restart servers. The script is located at /opt/bitnami/ctlscript.sh. Call it without any service name arguments to start all services:

$ sudo /opt/bitnami/ctlscript.sh start

Or use it to restart a single service, such as Apache only, by passing the service name as argument:

$ sudo /opt/bitnami/ctlscript.sh restart apache

Use this script to stop all services:

$ sudo /opt/bitnami/ctlscript.sh stop

Restart the services by running the script without any arguments:

$ sudo /opt/bitnami/ctlscript.sh restart

Obtain a list of available services and operations by running the script without any arguments:

$ sudo /opt/bitnami/ctlscript.sh  

How to find application credentials?

  • To find the username, browse to the IP address of your GoDaddy Cloud Server in your web browser to access your application, and click the Bitnami badge on the bottom right corner of the page.

    Server credentials

    The resulting page shows the application username.

    Server credentials

  • When creating and deploying a new server, you will have the opportunity to specify the application username and password. This password will not be displayed again, so note it carefully for future reference.

    Server credentials

    TIP: The password is also stored in the /opt/bitnami/var/log/pre-start.log file. However, this information is only stored in the above file until the server is restarted. On restart, the password information in this log file will be lost.

    Server credentials

How to block a suspicious IP address?

If you have detected an IP address that is collapsing your server or just making suspicious requests, block it using iptables. To do this, run the following command:

$ sudo su
$ iptables -A INPUT -s 1.2.3.4 -j DROP

Remember to replace 1.2.3.4 with the IP address you want to block.

IMPORTANT: Use with caution. If you don't specify an IP address, you will block yourself.

This will block all requests from that IP address. To have your iptables rules active even after rebooting the server, follow these steps:

  • Execute these commands:

     $ sudo su
     $ iptables-save > /opt/bitnami/iptables-rules
     $ crontab -e
    
  • Edit the above file with your favourite editor and include this line at the end of the file:

     @reboot /sbin/iptables-restore < /opt/bitnami/iptables-rules
    
  • Save the file and exit.

Now, on every boot, the system will load and apply the iptables rules.

To delete a rule, run the following command:

$ sudo su
$ iptables -D INPUT -s 1.2.3.4 -j DROP

This will delete the rule. Remember to replace 1.2.3.4 with a valid IP address.

Rerun the iptables-save command shown previously to make the new rules active even after rebooting the server.

How to open the server ports for remote access?

By default, GoDaddy Cloud Servers are deployed with all ports open.

How to close the server ports and deny remote access?

To close server ports on a GoDaddy server, you must first manually install a software firewall such as ufw.

By default, when ufw is enabled, it blocks all ports, including port 22 (used for SSH connections). Therefore, you could easily end up blocking off your own access to the server. So, in order to close all ports with ufw but still leave port 22 open, use the command below:

$ sudo ufw enable ; sudo ufw allow 22

To open another port, such as port 21 with ufw, use the command below:

$ sudo ufw allow 21

To deny access on a specific port, such as port 21 with ufw, use the command below:

$ sudo ufw deny 21

How to upload files to the server with SFTP?

NOTE: Bitnami applications can be found in /opt/bitnami/apps.

When uploading files via SFTP, you must have the server's IP address, username and password or, if you chose to deploy the server with an SSH key instead of a password, you must have the server username and corresponding SSH private key in .ppk format (for Windows) or in .pem format (for Linux and Mac OS X).

To obtain the IP address for your server, follow these steps:

Once you have confirmed that you have the IP address and correct SSH credentials for your server, follow the instructions below depending on the platform you wish to use.

Although you can use any SFTP/SCP client to transfer files to your server, this guide documents FileZilla (Windows, Linux and Mac OS X), WinSCP (Windows) and Cyberduck (Mac OS X).

Using an SSH Key

Once you have your server's SSH key, choose your preferred application and follow the steps below to connect to the server using SFTP.

FileZilla
IMPORTANT: To use FileZilla, your server private key should be in PPK format.

Follow these steps:

  • Download and install FileZilla.
  • Launch FileZilla and use the "Edit -> Settings" command to bring up FileZilla's configuration settings.
  • Within the "Connection -> SFTP" section, use the "Add keyfile" command to select the private key file for the server. FileZilla will use this private key to log in to the server. FileZilla configuration
  • Use the "File -> Site Manager -> New Site" command to bring up the FileZilla Site Manager, where you can set up a connection to your server.
  • Enter your server host name and the server user name.
  • Select "SFTP" as the protocol and "Ask for password" as the logon type. FileZilla configuration
  • Use the "Connect" button to connect to the server and begin an SFTP session. You might need to accept the server key, by clicking "Yes" or "OK" to proceed.

You should now be logged into the /home/USERNAME directory on the server, where USERNAME is the server username. You can now transfer files by dragging and dropping them from the local server window to the remote server window.

If you have problems accessing your server, get extra information by use the "Edit -> Settings -> Debug" menu to activate FileZilla's debug log.

FileZilla debug log

WinSCP
IMPORTANT: To use WinSCP, your server private key should be in PPK format.

Follow these steps:

  • Download and install WinSCP.
  • Launch WinSCP and in the "Session" panel, select "SFTP" as the file protocol.
  • Enter your server host name and server username. WinSCP configuration
  • Click the "Advanced…" button and within the "SSH -> Authentication -> Authentication parameters" section, select the private key file for the server. WinSCP will use this private key to log in to the server. WinSCP configuration
  • From the "Session" panel, use the "Login" button to connect to the server and begin an SCP session.

You should now be logged into the /home/USERNAME directory on the server, where USERNAME is the server username. You can now transfer files by dragging and dropping them from the local server window to the remote server window.

If you need to upload files to a location where the user account doesn't have write permissions, you have two options:

  • Once you have configured WinSCP as described above, click the "Advanced…" button and within the "Environment -> Shell" panel, select sudo su - as your shell. This will allow you to upload files using the administrator account. WinSCP configuration
  • Upload the files to the /home/USERNAME directory as usual. Then, connect via SSH and move the files to the desired location with the sudo command, as shown below:

       $ sudo mv /home/USERNAME/uploaded-file /path/to/desired/location/
    
Cyberduck
IMPORTANT: To use Cyberduck, your server private key should be in PEM format.

Follow these steps:

  • Select the "Open Connection" command and specify "SFTP" as the connection protocol. Cyberduck configuration

  • In the connection details panel, under the "More Options" section, enable the "Use Public Key Authentication" option and specify the path to the private key file for the server. Cyberduck configuration

  • Use the "Connect" button to connect to the server and begin an SFTP session.

You should now be logged into the /home/USERNAME directory on the server, where USERNAME is the server username. You can now transfer files by dragging and dropping them from the local server window to the remote server window.

Using a Password

Once you have your server's SSH credentials, choose your preferred application and follow the steps below to connect to the server using SFTP.

FileZilla

Follow these steps:

  • Download and install FileZilla.
  • Launch FileZilla and use the "File -> Site Manager -> New Site" command to bring up the FileZilla Site Manager, where you can set up a connection to your server.
  • Enter your server host name.
  • Select "SFTP" as the protocol and "Ask for password" as the logon type. Use the server username and password you specified when deploying the server. FileZilla configuration
  • Use the "Connect" button to connect to the server and begin an SFTP session. You might need to accept the server key, by clicking "Yes" or "OK" to proceed.

You should now be logged into the /home/USERNAME directory on the server, where USERNAME is the server username. You can now transfer files by dragging and dropping them from the local server window to the remote server window.

If you have problems accessing your server, get extra information by use the "Edit -> Settings -> Debug" menu to activate FileZilla's debug log.

FileZilla debug log

WinSCP

Follow these steps:

  • Download and install WinSCP.
  • Launch WinSCP and in the "Session" panel, select "SFTP" as the file protocol.
  • Enter your server host name and server username. WinSCP configuration
  • From the "Session" panel, use the "Login" button to connect to the server and begin an SCP session. Enter the password when prompted. WinSCP configuration

You should now be logged into the /home/USERNAME directory on the server, where USERNAME is the server username. You can now transfer files by dragging and dropping them from the local server window to the remote server window.

Cyberduck

Follow these steps:

  • Select the "Open Connection" command and specify "SFTP" as the connection protocol. Cyberduck configuration

  • In the connection details panel, enter the server IP address, the username you specified when deploying the server, and the password. Cyberduck configuration

  • Use the "Connect" button to connect to the server and begin an SFTP session.

You should now be logged into the /home/USERNAME directory on the server, where USERNAME is the server username. You can now transfer files by dragging and dropping them from the local server window to the remote server window.

How to configure a static IP address?

By default, a static public IP address will be assigned to your cloud server and will remain bound to it until the server is destroyed.

How to configure a custom domain?

To use a custom domain with a server started through the Bitnami Launchpad, follow these steps:

Configure a static IP address for your cloud server

Follow these instructions.

Configure the domain in your DNS provider

The next step is to update your domain's DNS settings, specifically by adding an A record that points to the static IP address of your cloud server.

This change can only be accomplished through your domain name provider; it cannot be made through the Bitnami Launchpad. You will therefore need to log in to your domain name provider's management console and make the necessary changes. Use these step-by-step instructions for GoDaddy.

Remember that once you make the necessary changes, it can take up to 48 hours for the change to propagate across other DNS servers. You can verify the new DNS record by using the Global DNS Propagation Checker and entering your domain name into the search field.

At the end of this step, entering your custom domain name into the browser address bar should take you to your Bitnami application on the cloud server, as shown below:

Custom domain in browser

Update application configuration

For some applications, such as Prestashop, it is also necessary to perform additional configuration so that the application "knows" its domain and the domain name is correctly reflected in application URLs. This is easily accomplished with the command-line Bitnami Configuration tool, bnconfig, which will update the application configuration and database to use the new domain wherever needed.

To use this tool, follow these steps:

  • Log in to your server console (instructions).
  • Change to your application directory, usually located under /opt/bitnami/apps/APP-NAME.
  • Execute the following command:

     $ sudo ./bnconfig --machine_hostname DOMAIN-NAME
    

For example, to configure Prestashop to use the domain my-shop.com, use the commands below:

$ cd /opt/bitnami/apps/prestashop
$ sudo ./bnconfig --machine_hostname my-shop.com

Or, to configure your WordPress Multisite blog to use the primary domain my-blog.com, use the commands below:

$ cd /opt/bitnami/apps/wordpress
$ sudo ./bnconfig --machine_hostname my-blog.com

How to backup a server?

IMPORTANT: We strongly recommend creating a backup of your server prior to any major changes or upgrades.

To create a backup, you can use the snapshot feature. This feature creates a snapshot of the disk, which can later be used to restore the server to an earlier state. Follow the steps below:

  • Log in to the GoDaddy Cloud Server control panel.
  • Navigate to the "Servers" section.
  • Select the server you wish to back up from the list of servers.
  • Click the "Power" tab and then click "Stop" to stop the server.

    GoDaddy server backup

  • Click the "Snapshots" tab and enter a name for the new snapshot.
  • Click "Take Snapshot" to take a snapshot of the server.

    GoDaddy server backup

  • Click the "Power" tab and then click "Start" to restart the server.

Your new snapshot will be created and will appear in the list of snapshots, under the "Images & Apps" menu.

How to restore a server?

You can restore a server from a snapshot. Follow these steps:

  • Log in to the GoDaddy Cloud Server control panel.
  • Navigate to the "Servers" section.
  • Click the "Create Server" button.

    GoDaddy server restore

  • On the resulting page, in the "Server Details" section enter a name for your server, together with a username and password (or SSH key) for the server.

  • On the same page, in the "Choose an Image" section, click the "Snapshots" tab and select the snapshot you wish to restore from.

    GoDaddy server restore

  • On the same page, select the data center and size for the new server.
  • Click "Finish" to create and deploy the new server.

A new server will be created from the selected snapshot.

How to change the server type?

The GoDaddy Cloud Servers control panel only supports setting the server type during the initial server build. Should you wish to change the server type after this, you must create a snapshot of the server, deploy a new server using the new server type from the snapshot, and then delete the older server.

Follow the steps below:

  • Create a snapshot of the server you wish to modify.
  • Navigate to the "Servers" section.
  • Click the "Create Server" button.

    GoDaddy server type modification

  • On the resulting page, in the "Server Details" section enter a name for your server, together with a username and password (or SSH key) for the server.

  • On the same page, in the "Choose an Image" section, click the "Snapshots" tab and select the snapshot you wish to restore from.

    GoDaddy server type modification

  • On the same page, in the "Choose a Data Center" section, select the data center you wish to use.

  • On the same page, in the "Choose a Size" section, select the new server configuration you wish to use.

    GoDaddy server type modification

  • Click "Finish" to create and deploy the new server.
  • Optionally, destroy the older server.

How to configure your application to use a third-party SMTP service for outgoing email?

Bitnami applications can be configured to use a third-party SMTP service for outgoing email. Examples of such third-party SMTP services are SendGrid and Mandrill. Instructions for using both these are provided below.

SendGrid

SendGrid's SMTP service can be accessed using your SendGrid account credentials. These credentials can be obtained by logging in to the SendGrid website and visiting the "Account Details" page.

SendGrid configuration

To configure your application to send email through SendGrid's SMTP service, use the settings below. Replace USERNAME with your SendGrid account username and PASSWORD with your SendGrid account password.

  • SMTP host: smtp.sendgrid.net
  • SMTP port: 587 for unencrypted/TLS email, 465 for SSL-encrypted email
  • SMTP username: USERNAME
  • SMTP password: PASSWORD

Here's an example of configuring WordPress to use SendGrid:

WordPress with SendGrid

More information is available in the SendGrid documentation.

Mandrill

Mandrill's SMTP service requires an API key for access. To obtain this key, log in to the Mandrill website, navigate to the "SMTP & API" section and create an API key. Note the SMTP server name, username and API key, as these serve as your credentials for accessing the Mandrill SMTP server.

Mandrill configuration

To configure your application to send email through Mandrill's SMTP service, use the settings below. Replace USERNAME with your SMTP username and API-KEY with the generated API key.

  • SMTP host: smtp.mandrillapp.com
  • SMTP port: 587 for unencrypted/TLS email, 465 for SSL-encrypted email
  • SMTP username: USERNAME
  • SMTP password: API-KEY

Here's an example of configuring WordPress to use Mandrill:

WordPress with Mandrill

More information is available in the Mandrill documentation.

Similar steps can be followed for other third-party SMTP services as well. Consult your service provider's documentation to obtain details on authentication credentials and available ports.

Does Bitnami collect any data from deployed Bitnami stacks?

Yes. Bitnami cloud images and virtual machines include a small agent that starts on boot and collects a few pieces of information about the system. For users of Bitnami Virtual Machine Images, Cloud Templates, and Container Images we may also collect information from downloaded, pulled or deployed images or instances, such as the instance type, IP address and operating system version or the Bitnami account used to launch the image in order to improve our product offerings.

We encourage you to leave this tracking on, but if you would like to turn it off, you can comment out or delete the following line in the /etc/crontab file:

X * * * * bitnami cd /opt/bitnami/stats && ./agent.bin --run -D

(where X is a random number for each instance generated at the boot time)

Our complete privacy policy is available online. If you have any questions, please feel free to contact us at hello@bitnami.com.

What does the SSH warning 'REMOTE HOST IDENTIFICATION HAS CHANGED' mean?

This warning is normal when trying to connect to the same IP address but a different machine - for instance, when you assign the same static IP address to another server. You can fix the problem by removing the IP address that you are trying to connect to from your ~/.ssh/known_hosts file.

If you use PuTTY, the SSH key mismatch warning looks like the image below:

SSH warning

In this case, click "Yes" if you know the reason for the key mismatch (IP address reassigned to another server, machine replaced, and so on).