try this
installing packages
root@server:~# apt-get install openssl ca-certificates
root@server:~# mkdir certs
root@server:~# cd certs
root@server:~/certs#
generating a private key
root@server:~/certs# openssl genrsa -out server.key 2048
Generating RSA private key, 2048 bit long modulus
..........+++
...........................................+++
e is 65537 (0x10001)
root@server:~/certs#
generate a Certificate Signing Request
root@server:~/certs# openssl req -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) [AU]: CU
State or Province Name (full name) [Some-State]:Cuba
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:My Home Lan
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:*.edu.cu
Email Address []:
Please enter the following `extra` attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
create a Self-Signed Certificate
root@server:~/certs# openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Signature ok
subject=/C=CU/ST=Cuba/O=Home Lan/CN=*.edu.cu
Getting Private key
Enter pass phrase for server.key:
root@server:~/certs#
install a private key and Self-Signed Certificate
root@server:~/certs# cp server.key /etc/ssl/private/
root@server:~/certs# cp server.crt /etc/ssl/certs/
these files you must copy it to the directory /etc/gitlab/ssl/
with the name of your host; for example, if my gitlab is hosted in gitlab.edu.cu would be like this: /etc/gitlab/ssl/gitlab.edu.cu.key
and /etc/gitlab/ssl/gitlab.edu.cu.crt
References
enable HTTPS on GitLab
Self-signed SSL certificates