5 changed files with 156 additions and 28 deletions
@ -0,0 +1,56 @@
|
||||
#!/bin/sh |
||||
|
||||
usage () { |
||||
echo "USAGE: cockroach-cert ca" 1>&2 |
||||
echo "USAGE: cockroach-cert server <host-name> [<ip-address>]" 1>&2 |
||||
echo "USAGE: cockroach-cert client <user-name>" 1>&2 |
||||
exit 1 |
||||
} |
||||
if [ $# -lt 1 ]; then |
||||
usage |
||||
fi |
||||
cmd="$1" |
||||
shift |
||||
if [ ".$cmd" = .ca ]; then |
||||
if [ $# -ne 0 ]; then |
||||
usage |
||||
fi |
||||
echo "++ generating CA certificate/key pair" |
||||
echo "-- generating: @l_prefix@/etc/cockroach/cockroach-ca.crt" |
||||
echo "-- generating: @l_prefix@/etc/cockroach/cockroach-ca.key" |
||||
su - @l_rusr@ -c \ |
||||
"@l_prefix@/bin/cockroach cert create-ca \ |
||||
--ca-cert=@l_prefix@/etc/cockroach/cockroach-ca.crt \ |
||||
--ca-key=@l_prefix@/etc/cockroach/cockroach-ca.key" |
||||
elif [ ".$cmd" = .server ]; then |
||||
if [ $# -lt 1 ]; then |
||||
usage |
||||
fi |
||||
echo "++ generating server certificate/key pair" |
||||
echo "-- generating: @l_prefix@/etc/cockroach/cockroach-server.crt" |
||||
echo "-- generating: @l_prefix@/etc/cockroach/cockroach-server.key" |
||||
su - @l_rusr@ -c \ |
||||
"@l_prefix@/bin/cockroach cert create-node \ |
||||
--ca-cert=@l_prefix@/etc/cockroach/cockroach-ca.crt \ |
||||
--ca-key=@l_prefix@/etc/cockroach/cockroach-ca.key \ |
||||
--cert=@l_prefix@/etc/cockroach/cockroach-server.crt \ |
||||
--key=@l_prefix@/etc/cockroach/cockroach-server.key \ |
||||
$*" |
||||
elif [ ".$cmd" = .client ]; then |
||||
if [ $# -lt 1 ]; then |
||||
usage |
||||
fi |
||||
username="$1" |
||||
shift |
||||
echo "++ generating client certificate/key pair" |
||||
echo "-- generating: @l_prefix@/etc/cockroach/cockroach-client-$username.crt" |
||||
echo "-- generating: @l_prefix@/etc/cockroach/cockroach-client-$username.key" |
||||
su - @l_rusr@ -c \ |
||||
"@l_prefix@/bin/cockroach cert create-client \ |
||||
--ca-cert=@l_prefix@/etc/cockroach/cockroach-ca.crt \ |
||||
--ca-key=@l_prefix@/etc/cockroach/cockroach-ca.key \ |
||||
--cert=@l_prefix@/etc/cockroach/cockroach-client-$username.crt \ |
||||
--key=@l_prefix@/etc/cockroach/cockroach-client-$username.key \ |
||||
$username $*" |
||||
fi |
||||
|
||||
@ -1,8 +1,25 @@
|
||||
#!/bin/sh |
||||
|
||||
if [ $# -lt 3 ]; then |
||||
echo "USAGE: cockroach-sql <username> <hostname> <database> [...]" 1>&2 |
||||
exit 1 |
||||
fi |
||||
|
||||
username="$1"; shift |
||||
hostname="$1"; shift |
||||
database="$1"; shift |
||||
|
||||
if [ ! -f @l_prefix@/etc/cockroach/cockroach-client-$username.crt ]; then |
||||
echo "ERROR: no certificate/key pair found for user \"$username\"" 1>&2 |
||||
exit 1 |
||||
fi |
||||
|
||||
exec @l_prefix@/bin/cockroach sql \ |
||||
--ca-cert=@l_prefix@/etc/cockroach/ca.crt \ |
||||
--cert=@l_prefix@/etc/cockroach/client.crt \ |
||||
--key=@l_prefix@/etc/cockroach/client.key \ |
||||
--user=$username \ |
||||
--host=$hostname \ |
||||
--database=$database \ |
||||
--ca-cert=@l_prefix@/etc/cockroach/cockroach-ca.crt \ |
||||
--cert=@l_prefix@/etc/cockroach/cockroach-client-$username.crt \ |
||||
--key=@l_prefix@/etc/cockroach/cockroach-client-$username.key \ |
||||
${1+"$@"} |
||||
|
||||
|
||||
@ -0,0 +1,18 @@
|
||||
#!/bin/sh |
||||
|
||||
if [ $# -lt 1 ]; then |
||||
echo "USAGE: cockroach-user <username> <command> [...]" 1>&2 |
||||
exit 1 |
||||
fi |
||||
username="$1" |
||||
shift |
||||
if [ ! -f @l_prefix@/etc/cockroach/cockroach-client-$username.crt ]; then |
||||
echo "ERROR: no certificate/key pair found for user \"$username\"" 1>&2 |
||||
exit 1 |
||||
fi |
||||
exec @l_prefix@/bin/cockroach user \ |
||||
--ca-cert=@l_prefix@/etc/cockroach/cockroach-ca.crt \ |
||||
--cert=@l_prefix@/etc/cockroach/cockroach-client-$username.crt \ |
||||
--key=@l_prefix@/etc/cockroach/cockroach-client-$username.key \ |
||||
${1+"$@"} |
||||
|
||||
Loading…
Reference in new issue