summaryrefslogtreecommitdiff
path: root/debian/config
diff options
context:
space:
mode:
Diffstat (limited to 'debian/config')
-rw-r--r--debian/config86
1 files changed, 86 insertions, 0 deletions
diff --git a/debian/config b/debian/config
new file mode 100644
index 000000000..0a5f42b2e
--- /dev/null
+++ b/debian/config
@@ -0,0 +1,86 @@
1#!/bin/sh
2
3action=$1
4version=$2
5
6if [ -d /etc/ssh-nonfree -a ! -d /etc/ssh ]; then
7 version=1.2.27
8 cp -a /etc/ssh-nonfree /etc/ssh
9fi
10
11# Source debconf library.
12. /usr/share/debconf/confmodule
13db_version 2.0
14
15if [ -n "$version" ] && dpkg --compare-versions "$version" lt 1:3.0p1-1
16then
17 db_text medium ssh/ssh2_keys_merged
18fi
19
20if [ -e /etc/init.d/ssh ] && ! grep -q pidfile /etc/init.d/ssh
21then
22 db_fset ssh/use_old_init_script isdefault true
23 db_input medium ssh/use_old_init_script || true
24 db_go
25
26 db_get ssh/use_old_init_script
27 [ "$RET" = "false" ] && exit 0
28else
29 db_set ssh/use_old_init_script true
30 db_fset ssh/use_old_init_script isdefault false
31fi
32
33if [ -z "$version" -a ! -e /etc/ssh/sshd_config ]
34then
35 db_input medium ssh/protocol2_only || true
36fi
37
38if [ -e /etc/ssh/sshd_config ]
39then
40 if dpkg --compare-versions "$version" lt-nl 1:1.3 ;
41 then db_input medium ssh/new_config || true
42 db_get ssh/new_config
43 if [ "$RET" = "true" ];
44 then db_input medium ssh/protocol2_only ||true
45 db_input high ssh/privsep_ask ||true
46 else db_text high ssh/privsep_tell ||true
47 fi
48 else db_text high ssh/privsep_tell ||true
49 fi
50else db_text high ssh/privsep_tell ||true
51fi
52
53db_input medium ssh/SUID_client || true
54
55db_input medium ssh/run_sshd || true
56
57if [ -x /usr/sbin/in.telnetd ] && grep -q "^telnet\b" /etc/inetd.conf
58then
59 if ! /usr/sbin/in.telnetd -? 2>&1 | grep -q ssl 2>/dev/null
60 then
61 db_input low ssh/insecure_telnetd || true
62 fi
63fi
64
65key=/etc/ssh/ssh_host_key
66export key
67if [ -n "$version" ] && [ -f $key ] && [ ! -x /usr/bin/ssh-keygen ] &&
68 dpkg --compare-versions "$version" lt 1.2.28
69then
70 # make sure that keys get updated to get rid of IDEA; preinst
71 # actually does the work, but if the old ssh-keygen is not found,
72 # it can't do that -- thus, we tell the user that he must create
73 # a new host key.
74 echo -en '\0\0' | 3<&0 sh -c \
75 'dd if=$key bs=1 skip=32 count=2 2>/dev/null | cmp -s - /dev/fd/3' || {
76 # this means that bytes 32&33 of the key were not both zero, in which
77 # case the key is encrypted, which we need to fix
78 db_input high ssh/encrypted_host_key_but_no_keygen || true
79 }
80fi
81
82
83db_text low ssh/forward_warning || true
84db_go
85
86exit 0