From 301362a20d201815dbab1fe5f916d835c1cfe301 Mon Sep 17 00:00:00 2001 From: lissav Date: Wed, 23 Jan 2008 16:51:01 +0000 Subject: [PATCH] Rewrite in Perl and make it work for AIX also. git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@318 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT/postscripts/remoteshell | 64 +++++++++++++++++++++--------------- 1 file changed, 37 insertions(+), 27 deletions(-) diff --git a/xCAT/postscripts/remoteshell b/xCAT/postscripts/remoteshell index 66e8a3e84..4c0a4b13e 100755 --- a/xCAT/postscripts/remoteshell +++ b/xCAT/postscripts/remoteshell @@ -1,35 +1,45 @@ -#!/bin/sh +#!/usr/bin/perl # IBM(c) 2007 EPL license http://www.eclipse.org/legal/epl-v10.html #egan@us.ibm.com #(C)IBM Corp # +my $homedir = $::ENV{'HOME'}; +if (-r "/etc/ssh/sshd_config") +{ # readable -if [ -r /etc/ssh/sshd_config ] -then - logger -t xcat "Install: setup /etc/ssh/sshd_config" - cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ORIG - perl -pi -e 's/^X11Forwarding .*$/X11Forwarding yes/' /etc/ssh/sshd_config - perl -pi -e 's/^KeyRegenerationInterval .*$/KeyRegenerationInterval 0/' /etc/ssh/sshd_config - perl -pi -e 's/(.*MaxStartups.*)/#\1/' /etc/ssh/sshd_config - echo "MaxStartups 1024" >>/etc/ssh/sshd_config - echo "PasswordAuthentication no" >>/etc/ssh/sshd_config -fi + my $msg = "Install: setup /etc/ssh/sshd_config"; + `logger -t xcat $msg`; + `cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ORIG`; + # get rid of X11Forwarding setting + `perl -pi -e 's/^.*X11Forwarding.*\n//g' /etc/ssh/sshd_config`; + # get rid of KeyRegenerationInterval setting + `perl -pi -e 's/^.*KeyRegenerationInterval.*\n//g' /etc/ssh/sshd_config`; + # get rid of MaxStartup setting + `perl -pi -e 's/^.*MaxStartups.*\n//g' /etc/ssh/sshd_config`; + # get rid of PasswordAuthentication setting + `perl -pi -e 's/^.*PasswordAuthentication.*\n//g' /etc/ssh/sshd_config`; + `echo "KeyRegenerationInterval 0" >>/etc/ssh/sshd_config`; + `echo "X11Forwarding yes" >>/etc/ssh/sshd_config`; + `echo "MaxStartups 1024" >>/etc/ssh/sshd_config`; + `echo "PasswordAuthentication no" >>/etc/ssh/sshd_config`; +} -if [ -d /xcatpost/.ssh ] -then - logger -t xcat "Install: setup root .ssh" - cd /xcatpost/.ssh - mkdir -p /root/.ssh - cp -f * /root/.ssh - chmod 700 /root/.ssh - chmod 600 /root/.ssh/* -fi -if [ -d /xcatpost/hostkeys ] -then - logger -t xcat "Install: using server provided host key for convenience." - cp /xcatpost/hostkeys/*_key /etc/ssh/ -fi +if (-d "/xcatpost/.ssh") +{ # directory + my $msg = "Install: setup root .ssh"; + `logger -t xcat $msg`; + chdir("/xcatpost/.ssh"); + mkdir("$homedir/.ssh", 700); + `cp -f /xcatpost/ssh/* $homedir/.ssh`; + my $cmd="chmod 600 $homedir/.ssh/*"; + `$cmd`; +} +if (-d "/xcatpost/hostkeys") +{ + my $msg = "Install: using server provided host key for convenience."; + `logger -t xcat $msg`; + `cp /xcatpost/hostkeys/*_key /etc/ssh/`; +} - -exit 0 +exit 0;