max furman
fc395f4d69
[acme db interface] compiles!
4 years ago
max furman
80a6640103
[acme db interface] wip
4 years ago
Mariano Cano
8c8c160c92
Fix method name in comment.
4 years ago
Mariano Cano
bdeb0ccd7c
Add support for the flag --issuer-password-file
...
The new flag allows to pass a file with the password used to decrypt
the key used in RA mode.
4 years ago
Herman Slatman
583d60dc0d
Address (most) PR comments
4 years ago
Herman Slatman
e1cab4966f
Improve initialization of SCEP authority
4 years ago
Herman Slatman
8c5b12e21d
Add non-TLS server and improve crypto.Decrypter interface
...
A server without TLS was added to serve the SCEP endpoints. According
to the RFC, SCEP has to be served via HTTP. The `sscep` client, for
example, will stop any URL that does not start with `http://` from
being used, so serving SCEP seems to be the right way to do it.
This commit adds a second server for which no TLS configuration is
configured. A distinct field in the configuration, `insecureAddress`
was added to specify the address for the insecure server.
The SCEP endpoints will also still be served via HTTPS. Some clients
may be able to work with that.
This commit also improves how the crypto.Decrypter interface is
handled for the different types of KMSes supported by step. The
apiv1.Decrypter interface was added. Currently only SoftKMS
implements this interface, providing a crypto.Decrypter required
for SCEP operations.
4 years ago
Herman Slatman
2d21b09d41
Remove some duplicate and unnecessary logic
4 years ago
Herman Slatman
3a5f633cdd
Add support for multiple SCEP provisioners
...
Similarly to how ACME suppors multiple provisioners, it's
now possible to load the right provisioner based on the
URL.
4 years ago
Herman Slatman
7948f65ac0
Merge branch 'master' into hs/scep
4 years ago
Herman Slatman
7ad90d10b3
Refactor initialization of SCEP authority
4 years ago
Mariano Cano
5be86691c1
Fix unit tests in Go 1.16.
4 years ago
Herman Slatman
78d78580b2
Add note about using a second (unsecured) server
4 years ago
Herman Slatman
9e43dc85d8
Merge branch 'master' into hs/scep-master
4 years ago
Herman Slatman
713b571d7a
Refactor SCEP authority initialization and clean some code
4 years ago
Herman Slatman
ffdd58ea3c
Add rudimentary (and incomplete) support for SCEP
4 years ago
Mariano Cano
b487edbd13
Clarify comment.
4 years ago
Mariano Cano
fbd2208044
Close key manager for safe reloads when a cgo module is used.
4 years ago
Mariano Cano
40d0596b71
Use smallstep/cli-utils instead of smallstep/cli
4 years ago
Mariano Cano
ba918100d0
Use go.step.sm/crypto/jose
...
Replace use of github.com/smallstep/cli/crypto with the new package
go.step.sm/crypto/jose.
4 years ago
Mariano Cano
d30a95236d
Use always go.step.sm/crypto
4 years ago
Mariano Cano
533ad0ca20
Use always go.step.sm/crypto/x509util
4 years ago
Mariano Cano
4943ae58d8
Move TLSOption, TLSVersion, CipherSuites and ASN1DN to certificates.
4 years ago
Mariano Cano
e83e47a91e
Use sshutil and randutil from go.step.sm/crypto.
4 years ago
Mariano Cano
6c64fb3ed2
Rename provisioner options structs:
...
* provisioner.ProvisionerOptions => provisioner.Options
* provisioner.Options => provisioner.SignOptions
* provisioner.SSHOptions => provisioner.SingSSHOptions
4 years ago
Mariano Cano
44207523be
Add missing tests.
4 years ago
Mariano Cano
0c8376a7f6
Fix existing unit tests.
4 years ago
max furman
1951669e13
wip
4 years ago
max furman
6e69f99310
Always set nbf and naf for new ACME orders ...
...
- Use the default value from the ACME provisioner if values are not
defined in the request.
4 years ago
Mariano Cano
9f1d95d8bf
Fix renew of certificate at the start of the server.
4 years ago
Mariano Cano
1d7ab9145a
Avoid lint error.
5 years ago
Mariano Cano
0b62ce9d0e
Use go 1.13 to build certificates.
5 years ago
max furman
495e60a44b
Extraneous fmt.Sprintf
5 years ago
Mariano Cano
349bca06bb
Fix line error due to deprecated DialTLS.
5 years ago
Mariano Cano
f5d2f92099
Load identity certificate from disk in each connection.
5 years ago
Ivan Bertona
9052da66a3
Fix linter, tidy go.mod file.
5 years ago
Mariano Cano
3d6a18180e
Fix a couple of race conditions in the renewal of certificates.
5 years ago
max furman
1cb8bb3ae1
Simplify statuscoder error generators.
5 years ago
max furman
dccbdf3a90
Introduce generalized statusCoder errors and loads of ssh unit tests.
...
* StatusCoder api errors that have friendly user messages.
* Unit tests for SSH sign/renew/rekey/revoke across all provisioners.
5 years ago
Mariano Cano
a025f72af7
Disable backdata on ca tests.
5 years ago
Mariano Cano
a88ba8eb31
Use errs package for HTTP errors.
5 years ago
Mariano Cano
47f4ac1b53
Add method to just write the identity certificate.
5 years ago
Mariano Cano
14e59775bd
Add method to renew the identity.
5 years ago
max furman
9aafe265d0
Should be returning nil from applyIdentity if cert expired.
5 years ago
max furman
b9f6aacb0f
Move api errors to their own package and modify the typedef
5 years ago
Mariano Cano
65b4dda420
Add wrappers to identity methods in the ca package.
5 years ago
Mariano Cano
524c221c61
Add mTLS test for identity client.
5 years ago
Mariano Cano
25144539f8
Improve identity tests.
5 years ago
Mariano Cano
d85386d0b4
Add identity client and move identity to a new package.
5 years ago
Mariano Cano
9e7b86342b
Fix test.
5 years ago
Mariano Cano
c6f6493bb7
Fail silently if the identity fails.
5 years ago
max furman
3ac388612a
Use x5cInsecure token for /ssh/check-host endpoint
5 years ago
Mariano Cano
ab126d6405
Add GetTransport to client.
5 years ago
Mariano Cano
2259f62638
Add method to create an ssh token.
5 years ago
Mariano Cano
caa2b8dbb7
Add leeway in identity not before.
5 years ago
max furman
0512f6e3e5
redundant variable type def
5 years ago
Mariano Cano
d2b1f1547f
Create a custom client that sends a custom User-Agent.
5 years ago
Mariano Cano
5d7829b198
Replace /ssh/get-hosts to /ssh/hosts
5 years ago
Mariano Cano
2fe07cd79c
Fix tests.
5 years ago
Mariano Cano
85d3843968
Add Identity helpers.
5 years ago
Mariano Cano
50188fc901
Add version support to the ca.Client.
5 years ago
Mariano Cano
db3b795eea
Fix directory permissions.
5 years ago
Mariano Cano
bbaf8e106e
Support for retry and identity files.
5 years ago
Mariano Cano
d555f310dc
Add support for identity authentication.
5 years ago
Mariano Cano
f9e5b27e63
Add client method for SSHBastion
5 years ago
max furman
29853ae016
sshpop provisioner + ssh renew | revoke | rekey first pass
5 years ago
max furman
862d704f6b
get-hosts fixes
5 years ago
max furman
5616386eed
Add SSH getHosts api
5 years ago
Mariano Cano
b8817ad648
Add proxycommand and new lines to templates.
5 years ago
Mariano Cano
37f17213bb
Add initial support for check-host endpoint.
5 years ago
Mariano Cano
d08db4df23
Rename SSH methods.
5 years ago
Mariano Cano
b5bc249e1c
Add support for multiple ssh roots.
...
Fixes #125
5 years ago
Mariano Cano
a35988ff08
Add initial support for ssh config.
...
Related to smallstep/cli#170
5 years ago
Mariano Cano
961be1fbc7
Add endpoint to return the SSH public keys.
...
Related to smallstep/ca-component#195
5 years ago
Max
0a96062b76
Merge pull request #128 from jkralik/returnCertChain
...
Change api of functions Authority.Sign, Authority.Renew
5 years ago
max furman
d368791606
Add x5c provisioner capabilities
5 years ago
max furman
7aec7c2612
Create ACME database tables when initializing ACME autority.
5 years ago
Jozef Kralik
bc6074f596
Change api of functions Authority.Sign, Authority.Renew
...
Returns certificate chain instead of 2 members.
Implements #126
5 years ago
max furman
fe7973c060
wip
5 years ago
max furman
e3826dd1c3
Add ACME CA capabilities
5 years ago
Mariano Cano
10e7b81b9f
Merge branch 'master' into ssh-ca
5 years ago
max furman
635c59ed24
Accept emails SANs
5 years ago
Mariano Cano
1c8f610ca9
Add initial implementation of an SSH CA using the JWK provisioner.
...
Fixes smallstep/ca-component#187
5 years ago
Mariano Cano
44e85b51f2
Add some extra coverage.
5 years ago
Mariano Cano
aa63f8f32c
Add missing root certificate to test.
5 years ago
Mariano Cano
f9e2ea9bd6
Revert "Do not depend on config package."
...
This reverts commit cc1c6f2cb4
.
5 years ago
Mariano Cano
cc1c6f2cb4
Do not depend on config package.
...
Config package will panic if it cannot create the step path folder.
5 years ago
Mariano Cano
01b6aebbf7
Make provisioner more configurable.
...
The intention of this change is to make it usable from cert-manager.
5 years ago
Mariano Cano
e8498bf612
Add new WithDatabase to test reload.
5 years ago
Mariano Cano
120e2d0caf
Fix restart with simple DB.
5 years ago
Mariano Cano
3a1a4c5ea9
Do not allow reload with database configuration changes.
...
Fixes #smallstep/ca-component#170
5 years ago
Mariano Cano
b595c55f0a
Update CA properties on reload.
...
Fixes #71
5 years ago
max furman
c242602231
reload and shutdown trickery
...
* Only shutdown the database once.
* Be careful when reloading the CA. Depending on whether the DB has
already been shutdown, and error may be unrecoverable.
5 years ago
max furman
cbeca9383b
Update nosql integration
...
* shutdown and reload database on SIGHUP
5 years ago
Mariano Cano
c2c9798149
Fix review issues.
5 years ago
Mariano Cano
46b9b117e3
Add test for provisioner type.
5 years ago
Mariano Cano
13783301ce
Remove test for unnecessary method.
5 years ago
Mariano Cano
b4739c185d
Remove unnecessary method GetCertificateRenewer.
5 years ago
Mariano Cano
fa216ccaad
Use SetTransport method.
5 years ago
Mariano Cano
43c5831582
Merge branch 'master' into step-sds
6 years ago