Annotation of /alx-src/tags/alxconf-0_6_4_3/functions/config_ssh_auth.sh
Parent Directory | Revision Log
Revision 3484 -
(hide annotations)
(download)
(as text)
Mon Apr 16 08:45:02 2012 UTC (12 years, 5 months ago) by niro
Original Path: alx-src/branches/alxconf-060/functions/config_ssh_auth.sh
File MIME type: application/x-sh
File size: 1421 byte(s)
Mon Apr 16 08:45:02 2012 UTC (12 years, 5 months ago) by niro
Original Path: alx-src/branches/alxconf-060/functions/config_ssh_auth.sh
File MIME type: application/x-sh
File size: 1421 byte(s)
-use rc_print() function
1 | niro | 1973 | # $Id$ |
2 | niro | 253 | # exchanges the public server and client ssh keys |
3 | |||
4 | niro | 342 | gen_keys() |
5 | { | ||
6 | niro | 1973 | if [ ! -e /etc/dropbear/dropbear_dss_host_key ] |
7 | niro | 253 | then |
8 | niro | 3484 | rc_print "Generating DSS-Hostkey ..." |
9 | niro | 1973 | dropbearkey -t dss -f /etc/dropbear/dropbear_dss_host_key |
10 | niro | 253 | fi |
11 | |||
12 | niro | 1973 | if [ ! -e /etc/dropbear/dropbear_rsa_host_key ] |
13 | niro | 253 | then |
14 | niro | 3484 | rc_print "Generating RSA-Hostkey ..." |
15 | niro | 1973 | dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key |
16 | niro | 253 | fi |
17 | } | ||
18 | |||
19 | niro | 342 | config_ssh_auth() |
20 | { | ||
21 | niro | 254 | local PUB_KEY_SERVER |
22 | local ID | ||
23 | niro | 1973 | local pubkey |
24 | niro | 2036 | local CONFIG |
25 | niro | 254 | |
26 | niro | 253 | # generate evtually missing keys |
27 | gen_keys | ||
28 | |||
29 | niro | 1973 | # read the pubkey (the sed prints only the second line, which is the pubkey) |
30 | pubkey="$(dropbearkey -y -f /etc/dropbear/dropbear_rsa_host_key | sed -n '2p')" | ||
31 | |||
32 | niro | 253 | # write the public key of the server to the host system |
33 | niro | 342 | PUB_KEY_SERVER="$(mysqldo "select public_key from ssh_auth_server where id=1;")" |
34 | niro | 253 | |
35 | niro | 2036 | if [[ ! -z ${PUB_KEY_SERVER} ]] |
36 | niro | 253 | then |
37 | niro | 2162 | HOME="/root" |
38 | niro | 253 | # only if not empty |
39 | [ ! -d $HOME/.ssh ] && install -d $HOME/.ssh | ||
40 | niro | 2162 | CONFIG="$HOME/.ssh/authorized_keys" |
41 | niro | 2036 | clearconfig |
42 | addconfig "${PUB_KEY_SERVER}" | ||
43 | niro | 253 | fi |
44 | |||
45 | # put the public key of the host into the db | ||
46 | niro | 342 | ID=$(mysqldo "select serial from ssh_auth_clients where serial=${ALX_SERIAL};") |
47 | niro | 253 | |
48 | niro | 2036 | if [[ ! -z ${ID} ]] |
49 | niro | 253 | then |
50 | niro | 342 | # run an update |
51 | niro | 1973 | mysqldo "update ssh_auth_clients set public_key='${pubkey}' where serial=${ALX_SERIAL};" |
52 | niro | 253 | else |
53 | niro | 342 | # run an insert |
54 | niro | 1973 | mysqldo "insert into ssh_auth_clients(serial,public_key) values('${ALX_SERIAL}','${pubkey}')" |
55 | niro | 253 | fi |
56 | } |