FreeBSD 14
Sponsored Link

Create SSL Certificate (Self Signed)2023/12/20

  Create Self Signed SSL Certificate by yourself.
It had better to use Self Signed Certificate on the environment for the purpose of testing, development, and so on. It's not recommended to use on production System.
root@dlp:~ #
vi /etc/ssl/openssl.cnf
# add to the end
# section name is any name you like
# DNS:(this server's hostname)
# if you set multiple hostname or domainname, set them with comma separated
# ⇒ DNS:dlp.srv.world, DNS:www.srv.world

[ srv.world ]
subjectAltName = DNS:dlp.srv.world

root@dlp:~ #
mkdir /usr/local/etc/ssl

root@dlp:~ #
cd /usr/local/etc/ssl

root@dlp:/usr/local/etc/ssl #
openssl genrsa -aes128 2048 > server.key

Enter PEM pass phrase:                  # set passphrase
Verifying - Enter PEM pass phrase:      # confirm

# remove passphrase from private key

root@dlp:/usr/local/etc/ssl #
openssl rsa -in server.key -out server.key

Enter pass phrase for server.key:   # input passphrase
writing RSA key

root@dlp:/usr/local/etc/ssl #
openssl req -utf8 -new -key server.key -out server.csr

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP                           # country code
State or Province Name (full name) []:Hiroshima                # state
Locality Name (eg, city) [Default City]:Hiroshima              # city
Organization Name (eg, company) [Default Company Ltd]:GTS      # company
Organizational Unit Name (eg, section) []:Server World         # department
Common Name (eg, your name or your server's hostname) []:dlp.srv.world  # server's FQDN
Email Address []:root@srv.world                                # admin email address

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

# create certificate with 10 years expiration date
# -extensions (section name) ⇒ the section name you set in [openssl.cnf]

root@dlp:/usr/local/etc/ssl #
openssl x509 -in server.csr -out server.crt -req -signkey server.key -extfile /etc/ssl/openssl.cnf -extensions srv.world -days 3650

Certificate request self-signature ok
subject=C = JP, ST = Hiroshima, L = Hiroshima, O = GTS, OU = Server World, CN = dlp.srv.world, emailAddress = root@srv.world
root@dlp:/usr/local/etc/ssl #
chmod 600 server.key

root@dlp:/usr/local/etc/ssl #
ls -l server.*

-rw-r--r--  1 root wheel 1424 Dec 20 15:21 server.crt
-rw-r--r--  1 root wheel 1062 Dec 20 15:21 server.csr
-rw-------  1 root wheel 1704 Dec 20 15:20 server.key
Matched Content