[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#592550: String freeze for Debian Installer



Le Wed, Apr 04, 2012 at 06:51:37PM +0200, Christian PERRIER a écrit :
> 
> I propose you use sublevel 6.
> 
> Then update the patch...then propose a patch to the D-I documentation
> (the part about preseeding as any preseedable value should be
> documented there).

Dear Christian and everybody,

here is an updated patch to network-console, to implement SSH connection via
authorized keys downloaded at run time.

I am still studying how to test the patched udeb...

I will submit a patch to the D-I documentation separately.  In the meantime,
please let me know if you spot a problem with the attached patches.

Have a nice week-end,

-- 
Charles Plessy
Tsurumi, Kanagawa, Japan
>From a46062a72f680feebc78ff7a630ccb5765b478c1 Mon Sep 17 00:00:00 2001
From: Charles Plessy <plessy@debian.org>
Date: Sat, 21 Apr 2012 11:53:13 +0900
Subject: [PATCH 1/4] Add support for public-key authentication (Matt T.
 Proud, LP: #184108).

URL: http://patches.ubuntu.com/n/network-console/network-console_1.29ubuntu1.patch
---
 debian/network-console.postinst  |   25 ++++++++++++++++++++++++-
 debian/network-console.templates |   16 ++++++++++++++++
 2 files changed, 40 insertions(+), 1 deletion(-)

diff --git a/debian/network-console.postinst b/debian/network-console.postinst
index c5c0560..cbfe825 100755
--- a/debian/network-console.postinst
+++ b/debian/network-console.postinst
@@ -26,7 +26,30 @@ case "$ARCHDETECT" in
 	;;
 esac
 
-while [ -z "$PASSWORD" ]; do
+db_get $TEMPLATE_ROOT/authorized_keys_url
+
+AUTHORIZED_KEYS_URL="$RET"
+AUTHORIZED_KEYS_DIRECTORY="/.ssh"
+AUTHORIZED_KEYS_FILE="$AUTHORIZED_KEYS_DIRECTORY/authorized_keys"
+
+if [ -n "$AUTHORIZED_KEYS_URL" ]; then
+	if [ ! -f "$AUTHORIZED_KEYS_FILE" ]; then
+		[ -d "$AUTHORIZED_KEYS_DIRECTORY" ] || \
+		    mkdir "$AUTHORIZED_KEYS_DIRECTORY"
+		chmod 0700 "$AUTHORIZED_KEYS_DIRECTORY"
+		if ! wget -q "$AUTHORIZED_KEYS_URL" -O "$AUTHORIZED_KEYS_FILE"; then
+			db_subst $TEMPLATE_ROOT/authorized_keys_fetch_failure \
+			    LOCATION "$AUTHORIZED_KEYS_URL"
+			db_input critical $TEMPLATE_ROOT/authorized_keys_fetch_failure \
+			    || true
+			db_go
+			exit 1
+		fi
+		chmod 0644 "$AUTHORIZED_KEYS_FILE" || true
+	fi
+fi
+
+while [ ! -f "$AUTHORIZED_KEYS_FILE" ] && [ -z "$PASSWORD" ]; do
 	db_input critical $TEMPLATE_ROOT/password || true
 	COMPARE_PW=''
 	db_input high $TEMPLATE_ROOT/password-again && COMPARE_PW=1 || true
diff --git a/debian/network-console.templates b/debian/network-console.templates
index 4439379..58daa88 100644
--- a/debian/network-console.templates
+++ b/debian/network-console.templates
@@ -75,3 +75,19 @@ _Description: Start SSH
  .
  Please check this carefully against the fingerprint reported by
  your SSH client.
+
+Template: network-console/authorized_keys_url
+Type: string
+Description: for internal use; can be preseeded
+ What URL contains a list of authorized SSH public keys?
+ .
+ The file at the given URL should be of the same form as a standard OpenSSH
+ authorized_keys file.
+
+Template: network-console/authorized_keys_fetch_failure
+Type: error
+# should be translated when committed upstream
+Description: Could not fetch OpenSSH authorized keys
+ An error occurred while fetching OpenSSH authorized keys from ${LOCATION}.
+ .
+ Check /var/log/syslog or see virtual console 4 for the details.
-- 
1.7.9.5

>From 2228ea565729b20691b2451af5743e331647d9e8 Mon Sep 17 00:00:00 2001
From: Charles Plessy <plessy@debian.org>
Date: Sat, 21 Apr 2012 12:17:31 +0900
Subject: [PATCH 2/4] Mark network-console/authorized_keys_fetch_failure for
 translation.

---
 debian/network-console.templates |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/debian/network-console.templates b/debian/network-console.templates
index 58daa88..db8621d 100644
--- a/debian/network-console.templates
+++ b/debian/network-console.templates
@@ -86,8 +86,8 @@ Description: for internal use; can be preseeded
 
 Template: network-console/authorized_keys_fetch_failure
 Type: error
-# should be translated when committed upstream
-Description: Could not fetch OpenSSH authorized keys
+# :sl6:
+_Description: Could not fetch OpenSSH authorized keys
  An error occurred while fetching OpenSSH authorized keys from ${LOCATION}.
  .
  Check /var/log/syslog or see virtual console 4 for the details.
-- 
1.7.9.5

>From 9ff20a125fc30d8b11e6fe10aa25f1f6bb9c9582 Mon Sep 17 00:00:00 2001
From: Charles Plessy <plessy@debian.org>
Date: Sat, 21 Apr 2012 12:22:05 +0900
Subject: [PATCH 3/4] Simplification of the authorized_keys* entries.

---
 debian/network-console.templates |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/debian/network-console.templates b/debian/network-console.templates
index db8621d..26c19fa 100644
--- a/debian/network-console.templates
+++ b/debian/network-console.templates
@@ -79,15 +79,15 @@ _Description: Start SSH
 Template: network-console/authorized_keys_url
 Type: string
 Description: for internal use; can be preseeded
- What URL contains a list of authorized SSH public keys?
+ URL to a list of authorized SSH public keys.
  .
- The file at the given URL should be of the same form as a standard OpenSSH
+ The file at the given URL should be of the same form as a standard SSH
  authorized_keys file.
 
 Template: network-console/authorized_keys_fetch_failure
 Type: error
 # :sl6:
-_Description: Could not fetch OpenSSH authorized keys
- An error occurred while fetching OpenSSH authorized keys from ${LOCATION}.
+_Description: Could not fetch SSH authorized keys
+ An error occurred while fetching SSH authorized keys from ${LOCATION}.
  .
  Check /var/log/syslog or see virtual console 4 for the details.
-- 
1.7.9.5

>From 246fa52be67f03f111ea7c8999e0f5e26bb37996 Mon Sep 17 00:00:00 2001
From: Charles Plessy <plessy@debian.org>
Date: Sat, 21 Apr 2012 12:25:11 +0900
Subject: [PATCH 4/4] New changelog entry for 1.31, about SSH public-key
 authentication.

---
 debian/changelog |   10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index 43ac6c4..82cce35 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,13 @@
+network-console (1.31) UNRELEASED; urgency=low
+
+  [ Matt T. Proud ]
+  * Add support for public-key authentication (Closes:#592550, LP: #184108).
+
+  [ Charles Plessy ]
+  * Mark authorized_keys_fetch_failure for translation, sublevel 6.
+
+ -- Charles Plessy <plessy@debian.org>  Sat, 21 Apr 2012 12:22:26 +0900
+
 network-console (1.30) unstable; urgency=low
 
   [ Updated translations ]
-- 
1.7.9.5


Reply to: