summaryrefslogtreecommitdiff
path: root/net/xrdp-devel/files/pkg-install.in
blob: 728714ad985e19295504b35553d83be54c099b60 (plain) (blame)
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
#!/bin/sh
# vim:ts=4:sw=4:et

if [ $# -ne 2 ]; then
    echo "usage: $0 distname { PRE-INSTALL | POST-INSTALL }" >&2
    exit 1
fi

case $2 in
    PRE-INSTALL)
        : nothing to do here
        ;;
    POST-INSTALL)
        RSAKEYS=%%ETCDIR%%/rsakeys.ini
        PRIVATEKEY=%%ETCDIR%%/key.pem
        CERTIFICATE=%%ETCDIR%%/cert.pem
        # make sure rsakeys and certificates are private
        umask 077
        # generate rsakeys.ini
        [ -e "$RSAKEYS" ] || %%PREFIX%%/bin/xrdp-keygen xrdp "$RSAKEYS".sample && \
        # generate self-signed certificate
        [ -e "$PRIVATEKEY" -a -e "$CERTIFICATE" ] || \
            %%OPENSSLBASE%%/bin/openssl req \
                 -x509 \
                 -newkey rsa:4096 \
                 -keyout "$PRIVATEKEY".sample \
                 -sha256 \
                 -nodes \
                 -out "$CERTIFICATE".sample \
                 -days 365 \
                 -subj "/CN=$(hostname)"

        for f in "$RSAKEYS" "$PRIVATEKEY" "$CERTIFICATE"
        do
            [ -e "${f}" ] || cp -n "${f}.sample" "${f}"
        done
        ;;
    *)
        echo "usage: $0 distname { PRE-INSTALL | POST-INSTALL }" >&2
        exit 1
        ;;
esac

exit 0