summaryrefslogtreecommitdiff
path: root/setup-sshd.in
blob: 67cb8a06ab55d85208d177ac096e80c941d40832 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/bin/sh

PREFIX=

. "$PREFIX/lib/libalpine.sh"

usage() {
	cat <<-__EOF__
		usage: setup-sshd [-h] [-c choice of SSH daemon]

		Setup sshd daemon

		options:
		 -h  Show this help
		 -c  Choice of SSH daemon: openssh dropbear none
	__EOF__
	exit 1
}

while getopts "hc:" opt; do
	case $opt in
		h) usage;;
		c) sshdchoice="$OPTARG";;
	esac
done

while ! isin "$sshdchoice" openssh dropbear none; do
	ask "Which SSH server? ('openssh', 'dropbear' or 'none')" openssh
	sshdchoice="$resp"
done

if [ "$sshdchoice" = "none" ]; then
	exit 0
fi

pkgs="$sshdchoice"
if [ "$sshdchoice" = "openssh" ] && apk info --quiet --installed acf-core; then
	pkgs="$pkgs acf-openssh"
fi

apk add --quiet $pkgs

svc=
case "$sshdchoice" in
	openssh) svc=sshd;;
	dropbear) svc=dropbear;;
esac

if [ -n "$svc" ]; then
	rc-update add $svc default
	rc-service $svc start
fi