This file is indexed.

/usr/lib/courier/mkesmtpdcert is in courier-mta 0.73.1-1.6.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

 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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#! /bin/bash
#
#
# Copyright 2000-2007 Double Precision, Inc.  See COPYING for
# distribution information.
#
# This is a short script to q`uickly generate a self-signed X.509 key for
# ESMTP STARTTLS.  Normally this script would get called by an automatic
# package installation routine.

PEMFILE="$1"

if [ -z "$PEMFILE" ]; then
	PEMFILE=/usr/lib/courier/esmtpd.pem
fi

if test "openssl" = "openssl"
then
	test -x /usr/bin/openssl || exit 0
else
	test -x /usr/local/bin/certtool || exit 0
fi

if test -f "$PEMFILE"
then
	echo "$PEMFILE already exists."
	exit 1
fi

cleanup() {
	rm -f "$PEMFILE".rand
	rm -f "$PEMFILE"
	rm -f "$PEMFILE".key
	rm -f "$PEMFILE".cert
	exit 1
}

cd /usr/lib/courier
umask 077
BITS="$BITS"
set -e

if test "openssl" = "openssl"
then
	cp /dev/null "$PEMFILE"
	chmod 600 "$PEMFILE"
	chown daemon "$PEMFILE"
	dd if=/dev/urandom of="$PEMFILE".rand count=1 2>/dev/null
	/usr/bin/openssl req -new -x509 -days 365 -nodes \
		  -config /etc/courier/esmtpd.cnf -out "$PEMFILE" -keyout "$PEMFILE" || cleanup
	/usr/bin/openssl gendh -rand "$PEMFILE".rand 512 >>"$PEMFILE" || cleanup
	/usr/bin/openssl x509 -subject -dates -fingerprint -noout -in "$PEMFILE" || cleanup
	rm -f "$PEMFILE".rand
else
	echo "/usr/local/bin/certtool is not supported in debian"
	exit 1

	if test "$BITS" = ""
	then
		BITS="high"
	fi

	cp /dev/null /usr/lib/courier/esmtpd.key
	chmod 600 /usr/lib/courier/esmtpd.key
	cp /dev/null /usr/lib/courier/esmtpd.cert
	chmod 600 /usr/lib/courier/esmtpd.cert

	/usr/local/bin/certtool --generate-privkey --sec-param=$BITS --outfile esmtpd.key
	/usr/local/bin/certtool --generate-self-signed --load-privkey esmtpd.key --outfile esmtpd.cert --template /etc/courier/esmtpd.cnf

	cp /dev/null /usr/lib/courier/esmtpd.pem
	chmod 600 /usr/lib/courier/esmtpd.pem
	chown daemon /usr/lib/courier/esmtpd.pem
	cat esmtpd.key esmtpd.cert >esmtpd.pem
	rm -f esmtpd.key esmtpd.cert
fi