388 Commits

Author SHA1 Message Date
Richard Bonhomme
70ddded80b
Tidy up op_test.sh verbose
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-10 21:08:21 +01:00
Richard Bonhomme
0acb8bdd17
Silence shellcheck
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-10 20:34:28 +01:00
Richard Bonhomme
713f1d633e
Default SAN for serverClient, additional op_test
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-10 20:13:59 +01:00
Richard Bonhomme
1fa5003081
Work around Windows mktemp bug
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-10 18:32:47 +01:00
Richard Bonhomme
2dc63cd6fc
Re-instate OPENSSL_CONF and EASYRSA_SAFE_CONF
EASYRSA_SAFE_CONF is libressl compatible config file.
Create EASYRSA_SAFE_CONF during init-pki, one time per PKI.
Set OPENSSL_CONF to be EASYRSA_SAFE_CONF, to prevent bogus warnings.

Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-10 18:21:44 +01:00
Richard Bonhomme
38ad124088
op_test.sh: remove old style custom ssl lib tests
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-10 17:46:23 +01:00
Richard Bonhomme
c763f3ad28
Improve wop_test.bat
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-10 14:18:29 +01:00
Eric F Crist
81b4ec923d
Clean up wait_sec()
Make wait_sec() accept an argument for time so it behaves more like
sleep.

Merge branch 'TinCanTech-master'

Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-06-07 08:56:00 -05:00
Eric F Crist
4af5aecb49
Merge branch 'master' of https://github.com/TinCanTech/easy-rsa into TinCanTech-master 2019-06-07 08:55:45 -05:00
Richard Bonhomme
fbb5e30858
op_test.sh: adhere to shellcheck
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-07 14:51:33 +01:00
Eric F Crist
bf7477f9d5
more typos, thanks xavierb!
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-06-07 08:48:06 -05:00
Eric F Crist
d7b0c781f4
typos in ChangeLog (thanks xavierb)
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-06-07 08:45:35 -05:00
Richard Bonhomme
f6e26cd42c
Improve op_test.sh: make wait_sec variable; Add server with SAN renew test.
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-07 14:38:38 +01:00
Eric F Crist
2412fa31b5
Updating changelog
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-06-07 07:56:24 -05:00
Eric F Crist
1ac0760867
Shore up Windows test framework
Merge branch 'TinCanTech-master'

Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-06-07 07:52:32 -05:00
Eric F Crist
1d695fc912
Merge branch 'master' of https://github.com/TinCanTech/easy-rsa into TinCanTech-master 2019-06-07 07:52:08 -05:00
Eric F Crist
03a464a1da
Merge branch 'xavierba-fix_305'
fixes #305

Gracefully handle IP when both renewing cert and keeping SAN from the
old certificate

Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-06-07 07:32:48 -05:00
Eric F Crist
aeaebfb599
Merge branch 'fix_305' of https://github.com/xavierba/easy-rsa into xavierba-fix_305 2019-06-07 07:32:33 -05:00
Eric F Crist
e8811e10e6
Merge branch 'luizluca-fix_dirtemp_windows'
workaround for but in the win32 mktemp utility

Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-06-07 07:31:17 -05:00
Eric F Crist
013f29556d
Merge branch 'fix_dirtemp_windows' of https://github.com/luizluca/easy-rsa into luizluca-fix_dirtemp_windows 2019-06-07 07:30:59 -05:00
Eric F Crist
5340fb2dfc
Merge branch 'luizluca-fix_read_s'
Should "fix" errors related to ash and potentially other non-POSIX
shells that don't handle set -o or related options.

http://www.austingroupbugs.net/view.php?id=1207

Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-06-07 07:25:04 -05:00
Xavier Bachelot
a41ce243c3
Gracefuly handle IP when both renewing cert and keeping SAN from the old cert
Signed-off-by: Xavier Bachelot <xavier@bachelot.org>
2019-06-07 11:43:44 +02:00
Luiz Angelo Daros de Luca
44509c77ec
Try 'stty', 'set -o echo' and then read -s
Although 'read -s' is not POSIX, it might be the only option
for some systems (OpenWrt). Try each alternative and, if all
those fails, warn the user and read with "echo on".

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-06-04 17:56:53 -03:00
Richard Bonhomme
1c0a9dfddd
Add Windows operational test
Signed-off-by: Richard Bonhomme <tincanteksup@gmail.com>
2019-06-04 17:27:02 +01:00
Luiz Angelo Daros de Luca
e2a8b78d9a
workaround win32 mktemp bug
win32 mktemp shipped by easyrsa does not work. It returns
unmodified template as the "temporary file". This results
in file conflicts when two temporary files are in use.
However win32 mktemp -d does work as expected. So, we can use
mktemp -du to generate a correct temporary file name.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-30 18:53:22 -03:00
Luiz Angelo Daros de Luca
12ee30a802
check for failed easyrsa_mktemp
Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-30 18:52:27 -03:00
Eric F Crist
8374fcb4da
Adding support back in for incremental serials
Not enabled by default.  Should fix #177.

Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-05-17 06:50:08 -05:00
Eric F Crist
6b7b6bf1f0
Merge branch 'IPv4v6-x509-type-email'
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-05-06 22:41:27 -05:00
Eric F Crist
9c0c15d062
Merge branch 'x509-type-email' of https://github.com/IPv4v6/easy-rsa into IPv4v6-x509-type-email 2019-05-06 22:41:05 -05:00
Eric F Crist
51ac28e19e
Merge branch 'luizluca-batch_ops'
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-05-06 22:38:01 -05:00
Eric F Crist
bcec3b9ce6
Merge branch 'batch_ops' of https://github.com/luizluca/easy-rsa into luizluca-batch_ops 2019-05-06 22:37:01 -05:00
Eric F Crist
c3853eefa4
Merge branch 'luizluca-fix_firstcert_warn'
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-05-06 22:32:53 -05:00
Eric F Crist
5d87cdcfae
Merge branch 'fix_firstcert_warn' of https://github.com/luizluca/easy-rsa into luizluca-fix_firstcert_warn 2019-05-06 22:32:34 -05:00
Eric F Crist
f56c81b584
Merge branch 'luizluca-temp_dir'
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-05-06 22:26:22 -05:00
Eric F Crist
59f4923078
Merge branch 'temp_dir' of https://github.com/luizluca/easy-rsa into luizluca-temp_dir 2019-05-06 22:26:03 -05:00
Eric F Crist
9d78538d30
Merge branch 'luizluca-fix_failed_buildfull_master'
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-05-06 22:19:54 -05:00
Eric F Crist
a4dc103a87
Merge branch 'fix_failed_buildfull_master' of https://github.com/luizluca/easy-rsa into luizluca-fix_failed_buildfull_master 2019-05-06 22:19:25 -05:00
Eric F Crist
c700e79905
Merge branch 'luizluca-follow_symblink'
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-05-06 21:46:46 -05:00
Eric F Crist
1899bcdc72
Merge branch 'follow_symblink' of https://github.com/luizluca/easy-rsa into luizluca-follow_symblink 2019-05-06 21:46:25 -05:00
Eric F Crist
942fa82a2a
Merge branch 'luizluca-fix_trap_exit_v2'
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-05-06 21:41:36 -05:00
Stefan Pietsch
d228fbc796 Set nonRepudiation bit for email certificates 2019-05-06 23:52:55 +02:00
Stefan Pietsch
a2ae82477d Add x509-type for email certificates 2019-05-04 16:48:46 +02:00
Luiz Angelo Daros de Luca
cdaa4a1fb0
include index.txt.attr as CA files
Remove a warning when the first certificate is generated

Can't open .../easy-rsa/pki/index.txt.attr for reading, No such file or directory

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-02 19:13:48 -03:00
Luiz Angelo Daros de Luca
52befc623f
fix prog_vars when easyrsa is symlink or in $PATH
When easyrsa in in $PATH, $0 does not contain a directory, resulting
in an invalid prog_vars. prog_vars is used to get default vars
location, if $EASYRSA_VARS_FILE, $EASYRSA_PKI/vars and $PWD/pki/vars
does not exist.

$0 is also used to set $EASYRSA the same way prog_vars is defined.

$EASYRSA/openssl-easyrsa.cnf is used to set $EASYRSA_SSL_CONF initial
content if missing.

$EASYRSA/x509-types is used to for extensions dir if $EASYRSA_EXT_DIR
and $EASYRSA_PKI/x509-types are not found. However, if vars already
needs changes, it is better to set $EASYRSA_EXT_DIR and file locations
there.

Normally a symlink to /usr/bin will be used to put easyrsa in $PATH.
Following $PATH and symlink allows easyrsa to be located in a more
standard dir like /usr/lib/easy-rsa/easyrsa and vars at
/usr/{lib,libexec,share}/easyrsa/vars, which could be a symlink to
/etc/easy-rsa/vars. vars can be easily appended with the default
distribution values.

With this patch, a system-wide easyrsa package could use this file
structure without patching easyrsa:

 /etc/easy-rsa/openssl-easyrsa.cnf
 /etc/easy-rsa/pki/
 /etc/easy-rsa/vars
 /usr/bin/easyrsa -> /usr/lib/easy-rsa/easyrsa
 /usr/lib/easy-rsa/easyrsa
 /usr/lib/easy-rsa/openssl-easyrsa.cnf
 /usr/lib/easy-rsa/vars -> /etc/easy-rsa/vars
 /usr/lib/easy-rsa/x509-types

If following symlink fails (win32), the previous behavior is used.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-02 19:08:08 -03:00
Luiz Angelo Daros de Luca
58b095454c
Remove req/privkey in build_full when sign_req fails
build_full leave req/privkey ig sign fails (i.e. when CA pass was
incorrect). If build_full fails, it should remove everything it created.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-02 19:03:47 -03:00
Luiz Angelo Daros de Luca
c794d5ebaa
add --passin --passout for alternative pass src/dst
Batch operations cannot be automated if openssl keeps asking
for a password. These new options allow the user to specify
a new source for password, using any openssl password options
like pass:1234 or env:var

Aborts build-ca if privkey generation fails.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-02 18:57:53 -03:00
Luiz Angelo Daros de Luca
4ede9bf103
Add easyrsa_openssl as openssl wrap function
Most $EASYRSA_OPENSSL calls where replaced by easyrsa_openssl
calls. When OpenSSL config is needed, easyrsa_openssl generates
a temporary config in tempfiles, incorporating make_ssl_config and
$EASYRSA_EXTRA_EXTS usage.

vars_source_check and verify_ssl_lib use of make_ssl_config was
removed.

'export OPENSSL_CONF' was removed as every openssl call that might
need a conf now uses easyrsa_safessl.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-02 18:26:56 -03:00
Luiz Angelo Daros de Luca
6ecb6f489e
use temporary directory instead of individual files
Manually managing temp files into fixes variables (EASYRSA_TEMP_FILE_*),
can result in errors like in build_ca that reused EASYRSA_TEMP_FILE_3.
A temporary directory simplify the cleanup.

A configurable directory for temp files (var EASYRSA_TEMP_DIR) also
allows the user to define a different temporary directory. This is
important for devices using flash disks that have limited number of
writes.

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-02 18:26:56 -03:00
Luiz Angelo Daros de Luca
d48618474b
cleanup and exit code when a signal is received
Merged clean_temp and prog_exit into cleanup, but removing
the exit call. Exit should not be called during EXIT as it will
overwrite the current exit code.

Trapped signals simply call "exit $((128+signal))" to force the
execution of EXIT (for non bash-shells).

Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
2019-05-02 18:23:53 -03:00
Eric F Crist
38c42b22d6
neuter SC, WIP
Signed-off-by: Eric F Crist <ecrist@secure-computing.net>
2019-04-18 06:50:57 -05:00