After rebuilding Bud due to successful attacks, a number of suggestions were made, they were implemented as folows:
daemon, bin, sys, games, man, mail, news, uucp, proxy, www-date, backup, list, irc, gnats, nobody,
groupadd –system wheel
Postfix, Courier IMAP, and Apache all use their own SSL certificates in /etc/ssl/ for secure communications and TLS authenication. The configuration files for each application will have to reflect the name of the certificate file. See the documentation for individual applications or existing systems for the naming convention.
The guide for creating the keys is at openssl.htm. Additional information might be at the OpenSSL web site.
This is done once for the system.
/etc/ssl/openssl.cnf to /etc/ssl/openssl.cnf.original and change/add defaults in the req_distinguished_name section of openssl.cnf to be specific to SLUUG. The commonName_default and organizationalUnitName_default are different for each system.countryName_default = USstateOrProvinceName_default = MissourilocalityName_default = St. Louis0.organizationName_default = St. Louis Unix User's GroupemailAddress = postmaster@sluug.orgcommonName_default = bud.sluug.orgorganizationalUnitName_default = bud.sluug.orgThis entire section is duplicated below in the SSL Key Generation - Script Method section. Do one or the other, not both.
This is repeated for each application that needs it.
openssl genrsa -des3 -out /etc/ssl/private/temp.key 1024
openssl rsa -in /etc/ssl/private/temp.key -out /etc/ssl/private/<name>.key
rm /etc/ssl/private/temp.key
openssl req -new -key /etc/ssl/private/<name>.key -out /etc/ssl/private/<name>.csr
openssl x509 -req -days 3650 -in /etc/ssl/private/<name>.csr -signkey /etc/ssl/private/<name>.key -out /etc/ssl/<name>.crt
chown :postfix /etc/ssl/private/postfix.key chown :postfix /etc/ssl/postfix.crt
This entire section is duplicated above in the SSL Key Generation - Script Method section. Do one or the other, not both.
This is repeated for each application that needs it.
The above commands are in a script named openssl-gencrt to simplify certificate creation:
/usr/local/sbin/openssl-gencrt from another system if not already done.openssl-keygen with the desired Certificate Name as an argumentopenssl-gencrt <name>