summaryrefslogtreecommitdiffstats
path: root/debian/openssh-server.config
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 11:13:19 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 11:13:19 +0000
commit94597021fbf5b12b369b7bb3c13af715d8be8c4e (patch)
tree5195a1ab18ed95e7ae2e5bf5e74396b00861a6b7 /debian/openssh-server.config
parentAdding upstream version 1:8.4p1. (diff)
downloadopenssh-94597021fbf5b12b369b7bb3c13af715d8be8c4e.tar.xz
openssh-94597021fbf5b12b369b7bb3c13af715d8be8c4e.zip
Adding debian version 1:8.4p1-5+deb11u3.debian/1%8.4p1-5+deb11u3debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--debian/openssh-server.config46
1 files changed, 46 insertions, 0 deletions
diff --git a/debian/openssh-server.config b/debian/openssh-server.config
new file mode 100644
index 0000000..4a66a35
--- /dev/null
+++ b/debian/openssh-server.config
@@ -0,0 +1,46 @@
+#! /bin/sh
+set -e
+
+. /usr/share/debconf/confmodule
+db_version 2.0
+
+get_config_option() {
+ option="$1"
+
+ [ -f /etc/ssh/sshd_config ] || return
+
+ # TODO: actually only one '=' allowed after option
+ perl -lne '
+ s/[[:space:]]+/ /g; s/[[:space:]]+$//;
+ print if s/^[[:space:]]*'"$option"'[[:space:]=]+//i' \
+ /etc/ssh/sshd_config 2>/dev/null
+}
+
+permit_root_login="$(get_config_option PermitRootLogin)" || true
+password_authentication="$(get_config_option PasswordAuthentication)" || true
+if [ -f /etc/ssh/sshd_config ]; then
+ # Make sure the debconf database is in sync with the current state
+ # of the system.
+ if [ "$permit_root_login" = yes ]; then
+ db_set openssh-server/permit-root-login false
+ else
+ db_set openssh-server/permit-root-login true
+ fi
+ if [ "$password_authentication" = no ]; then
+ db_set openssh-server/password-authentication false
+ else
+ db_set openssh-server/password-authentication true
+ fi
+fi
+
+if dpkg --compare-versions "$2" lt-nl 1:6.6p1-1 && \
+ [ "$permit_root_login" = yes ]; then
+ if [ "$(getent shadow root | cut -d: -f2)" = "!" ]; then
+ db_set openssh-server/permit-root-login true
+ else
+ db_input high openssh-server/permit-root-login || true
+ db_go
+ fi
+fi
+
+exit 0