Generating a Certificate Signing Request (CSR) in CentOS

This guide will walk you through the steps to create a Certificate Signing Request, (CSR for short.) SSL certificates are the industry-standard means of securing web traffic to and from your server, and the first step to getting your own SSL is to generate a CSR. This guide is written specifically for CentOS 7.

  1. Log onto your server using SSH.
  2. Enter the following command at the prompt.

    Note:

    Replace mydomain with your actual domain name.

    openssl req -new -newkey rsa:2048 -nodes -keyout mydomain.key -out mydomain.csr

  3. You will be prompted to answer a series of questions, explained below.
    • Country Name – This is the two-letter abbreviation for your country. For example, United States would be US and Great Britain would be GB.
    • State or Province Name – This is the full name of the state your organization operates from. For example, this might be “California” or “Michigan”.
    • Locality Name – Name of the city your organization operates from. Examples might include “Lansing” or “Phoenix”. Don’t use abbreviations in this field. For example, “St. Helena” should be “Saint Helena”.
    • Organization Name – The name of your organization. If you are a business, use must use your legal name. If you are applying as an individual, you use your full name instead.
    • Organizational Unit Name – If applying as a business, you can enter your “Doing Business As” (DBA) name here. Alternately, you can use a department name here. For example, “IT Department” or “Web Administration”.
    • Common Name – The domain name that you are purchasing a SSL certificate for. This must be a fully qualified domain name (FQDN). An example might be mydomain.com.

      Note:

      If you are applying for a special wildcard SSL certificate, you will need to enter an asterisk for the subdomain. An example in that case might be *.mydomain.com. Never include the “http://”, “https://”, or any other special characters in this field. Never include text after the top level domain at the end. For example, your common name should end in .com, .net, (or whatever other extension you are applying for.)
    • Email Address – An email address that can be used as a point of contact for your domain. Be sure the address is valid!
    • A challenge password – An optional password to further secure your certificate. Be sure to remember this password if you choose to use it. It must be at least 4 characters long. You can skip this step if you like.
    • An optional company name – Another optional step. Fill in your company name if you wish. This is not required for web SSL certificates.
  4. Your CSR file has now been generated!

Finding Your CSR

Take a look at the contents of your current working directory with the “ls” command. You should notice two new files ending with “.key” and “.csr” respectively.
ls -l
total 8
-rw-r--r--. 1 root root 1082 Jan 31 12:10 mydomain.csr
-rw-------. 1 root root 1704 Jan 31 12:10 mydomain.key

The .key file should be kept private on your server. The .csr file is your certificate signing request, and can be sent to a Certificate Authority. You can inspect the contents of the CSR by using the “cat” command. Here is an example of the CSR generated in this walk through:
cat mydomain.csr

-----BEGIN CERTIFICATE REQUEST-----
MIIC5jCCAc4CAQAwgaAxCzAJBgNVBAYTAlVTMRAwDgYDVQQIDAdBcml6b25hMRAw
DgYDVQQHDAdQaG9lbml4MRswGQYDVQQKDBJNeSBBd2Vzb21lIENvbXBuYXkxFjAU
BgNVBAsMDUlUIERlcGFydG1lbnQxFTATBgNVBAMMDG15ZG9tYWluLmNvbTEhMB8G
CSqGSIb3DQEJARYSYWRtaW5AbXlkb21haW4uY29tMIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEAsNljF8u2vvTGiSyStD/+4eInQnWlB30o38hWnF+bi6ZS
MmraeigL/HrSoKfUtj/z96PVeK9CFo0AZ12Tq9lBzXtqxSjboIcvr9lZvrycrEYR
qsepF8M18YOjyBfDzXIY13o5Sjnd4e0H7gZCldxy930LjJ1JQC0o4XAbxHd8k7A3
976uh2r6MPdnnQ65UG2vKnMa1MGfT9XTD6dQjj3ZpTqbdG4TnOPFlG4TNXu2zSYl
CX7XHjBKbGx5r/ohQBcqAYFpAMs/7E+gSbkK4jv9Mr8W1gC0CHSJkpT0tqcn+8Lj
1vMi3ysDed6bObC/OMBXAZY2lpALbHvnzy2NJPRPjwIDAQABoAAwDQYJKoZIhvcN
AQELBQADggEBABuUSRgBnv4R1k4UHGngmvQ63jjaZhO6URhQbFzb1e+XHeqou1F8
YSP17A8w23hLfXxs/NCOhQzAn9cFbBGy6dajqMjsCF3timGXHitsmUyswpG3k+dI
bWIsRaJPMSOOz9HcI7ztvN1zs6iiMCZkpI4G+9J5wBqddgXSH+/w5bCViqj0855O
APFUYUEFSB5jS5/e132F5zhcZV5vQ2bato8Zy58gzz5t+q5rn6uuzqc05kmBtDG8
B12RlUt2lBbl6sxQDKQbsM6snwn50H3Xszgn8kyR1VuXOqaKf1X1cCKRTSzYztUp
FeKV0mMwoC9XxX6YCz8eQy66RMVSm3hGI2Y=
-----END CERTIFICATE REQUEST-----

You will need to copy and paste the entire contents of the CSR file to your Certificate Authority when ordering a SSL certificate. Be sure that you include the lines that read “BEGIN CERTIFICATE REQUEST” and “END CERTIFICATE REQUEST”. If you are a Liquid Web customer, we make that easy for you to do right within your Manage Dashboard!

How to Install NVM (Node Version Manager) for Node.js on Ubuntu 16.04 LTS

Node Version Manager, also known as NVM is used to control and manage multiple active versions of Node.js in one system. It is a command line utility and a bash script that allows programmers to shift between different versions of Node.js. They will be able to install any version using a single command and setting defaults using the command line utility.

Note:

  • These installation instructions are specifically for an Ubuntu 16.04 LTS server.
  • I am using a Liquid Web Storm VPS Ubuntu 16.04 LTS 64-bit Core-managed server.
  • I will be logged in as Root.

Step 1: Installing NVM (Node Version Manager) on Ubuntu 16.04 LTS

  1. Install a C++ Compiler
    First, make sure all packages are up to date:apt-get update
  2. The build-essential package (C++ Compiler) should exist on the server, however, we will still include it in our installation process:apt-get install build-essential libss1-dev

Step 2: Install NVM (Node Version Manager)

  1. Using this curl command will start the installation script:curl-o-https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash

    Note:

    At the time of this publication, NVM v0.33.8 was the most recent version available. You should check the GitHub project page for the latest release of NVM, and adjust the above command to include the newest version.

  2. After running the curl command, the output should look similar to the following:Close and reopen your terminal to start using nvm
  3. You can do as the above output suggests or run the following command:source ~/.profile

Step 3: Verify the Installation

Now you can verify that NVM is installed and working properly using the following command:nvm --version

The output will show:0.33.8

Note:

You can always use the help command to get you started on the node.js management:nvm help

An Introduction to Managing a Linux Server with systemd

Systemd is is an init system used by several common Linux Distributions which has gained popularity since 2015. A Linux init system is the first process or daemon started on a system after the initial boot process, and manages services, daemons, and other system processes. Systemd is comprised of unit files that contain the initialization instructions for the daemons which it controls. While many portions of a system can be managed with systemd, this article will focus on managing services. Continue reading “An Introduction to Managing a Linux Server with systemd”

Building Product Variations in WooCommerce

Let’s say you have an WooCommerce shop where you sell varying types of trinkets and knickknacks. Maybe you have a fantastic glove collection and want to start selling them. So you’ve got a handful of products built in the store and things are going smooth.

You come across a pair of gloves that are identical to another you already built out, the only difference is the color. So what’s the best way to set that new product up? What about if you sell the same item in varying size? In this article we’ll learn about product variations and how these can help! Continue reading “Building Product Variations in WooCommerce”

Managing Product Inventory in WooCommerce

You’ve added all your products, but where do you manage your inventory within your dashboard? No good eCommerce platform would be complete with out inventory management – after all no one wants to manage they by hand. In this post we’ll take a look into how this works so you won’t have to manage stock yourself. Continue reading “Managing Product Inventory in WooCommerce”

Accepting payments with PayPal on WooCommerce

Without a doubt PayPal is the most used payment processing service around today. At the time of writing this, PayPal accounts for 73.31% of Payment Processing services and is used on more than 760k domains. With such a significant market-share it’s hard to not accept PayPal. There are alternatives like Stripe, Square, or Authorize.net. All these options will accept and process payments from major credit card networks.

The fact that it’s so widely used means a lot of consumers already have a PayPal account setup. If you want your site to be one of the 760k websites that accept PayPal you can enable it in these simple steps. The PayPal standard version is included for use by default with WooCommerce. WooCommerce also allows you to easily setup PayPal Express Checkout, Braintree, PayPal Payments Pro, or PayPal Advanced.

Continue reading “Accepting payments with PayPal on WooCommerce”

Using Stripe as a Payment Gateway in WooCommerce

When you’re building an eCommerce store you’ll eventually need to setup up a solution for accepting payments. Your site’s payment processing can be managed with services like PayPal, Square, or others. When you setup a WooCommerce you find that out of the box it supports: Direct bank transfers, Check payments, cash on deliver, and PayPal.

When you want to use some other service you’ll have to add support for it. Luckily the WooCommerce platform has a lot of options for payment gateways. In this KB article we’ll show you how to setup Stripe to work in your WooCommerce store. With our Managed WooCommerce Hosting you have Stripe pre-installed and ready to activate. Continue reading “Using Stripe as a Payment Gateway in WooCommerce”

Adding categories to WooCommerce Products

So you’re building out your new eCommerce store and are adding in your products. Maybe you are going to sell a mixture of varying styles of Belts and Hats. So you have all your Belts in and are going to start adding the Hats, how do you keep everything organized though? Well, similar to WordPress posts you can set categories and tags for your products.

Categorization is a great way to organize if you have a variety of products, or want to make it easy for your customers to find products that fall into a certain group. Having access to these taxonomies is a very valuable tool, a well organized product catalog can make a world of difference for customers. Continue reading “Adding categories to WooCommerce Products”

Adding Images and gallery images to WooCommerce Products

When you build your eCommerce site one of the first things you’ll do is create products. No good web store is complete without having good product images with each item you sell. A good product image can help consumers imagine the item in person and may help lead to more sales. Having a gallery for the product is even better! Continue reading “Adding Images and gallery images to WooCommerce Products”