I_R=${INSTALL_ROOT} USRBIN=${I_R}/usr/bin FREENX_VARS="NX_DIR NX_HOME_DIR NX_SESS_DIR NX_ETC_DIR NX_LOGFILE SSH_AUTHORIZED_KEYS" for var in ${FREENX_VARS}; do persistent_add $var eval "$(grep "^$var" ${USRBIN}/nxloadconfig)" done && touch ${I_R}${NX_ETC_DIR}/passwords \ ${I_R}${NX_ETC_DIR}/passwords.orig \ ${I_R}${NX_LOGFILE} && chmod 600 ${I_R}${NX_ETC_DIR}/pass* \ ${I_R}${NX_LOGFILE} && if [ ! -e ${I_R}${NX_ETC_DIR}/users.id_dsa ] then /usr/bin/ssh-keygen -f ${I_R}${NX_ETC_DIR}/users.id_dsa -t dsa -N "" > /dev/null 2>&1 fi if [ -e ${I_R}${NX_HOME_DIR}/.ssh/client.id_dsa.key ] && [ -e ${I_R}${NX_HOME_DIR}/.ssh/server.id_dsa.pub.key ] then mv -f ${I_R}${NX_HOME_DIR}/.ssh/client.id_dsa.key ${I_R}${NX_ETC_DIR}/client.id_dsa.key mv -f ${I_R}${NX_HOME_DIR}/.ssh/server.id_dsa.pub.key ${I_R}${NX_ETC_DIR}/server.id_dsa.pub.key fi if ! { getent passwd | egrep -q "^nx:"; } then /usr/sbin/useradd -m -d ${NX_HOME_DIR} -s ${NX_DIR}/bin/nxserver nx mkdir -p ${I_R}${NX_HOME_DIR}/.ssh chmod 700 ${I_R}${NX_HOME_DIR}/.ssh fi if [ ! -e ${I_R}${NX_ETC_DIR}/client.id_dsa.key ] || [ ! -e ${I_R}${NX_ETC_DIR}/server.id_dsa.pub.key ] then rm -f ${I_R}${NX_ETC_DIR}/client.id_dsa.key rm -f ${I_R}${NX_ETC_DIR}/server.id_dsa.pub.key /usr/bin/ssh-keygen -q -t dsa -N '' -f ${I_R}${NX_ETC_DIR}/local.id_dsa mv ${I_R}${NX_ETC_DIR}/local.id_dsa ${I_R}${NX_ETC_DIR}/client.id_dsa.key mv ${I_R}${NX_ETC_DIR}/local.id_dsa.pub ${I_R}${NX_ETC_DIR}/server.id_dsa.pub.key fi cp -f ${I_R}${NX_ETC_DIR}/client.id_dsa.key ${I_R}${NX_HOME_DIR}/.ssh/client.id_dsa.key cp -f ${I_R}${NX_ETC_DIR}/server.id_dsa.pub.key ${I_R}${NX_HOME_DIR}/.ssh/server.id_dsa.pub.key chmod 600 ${I_R}${NX_ETC_DIR}/client.id_dsa.key \ ${I_R}${NX_ETC_DIR}/server.id_dsa.pub.key \ ${I_R}${NX_HOME_DIR}/.ssh/client.id_dsa.key \ ${I_R}${NX_HOME_DIR}/.ssh/server.id_dsa.pub.key cat ${I_R}${NX_HOME_DIR}/.ssh/server.id_dsa.pub.key > ${I_R}${NX_HOME_DIR}/.ssh/authorized_keys2 chmod 640 ${I_R}${NX_HOME_DIR}/.ssh/authorized_keys2 echo -n "127.0.0.1 " > ${I_R}${NX_HOME_DIR}/.ssh/known_hosts cat /etc/ssh/ssh_host_rsa_key.pub >> ${I_R}${NX_HOME_DIR}/.ssh/known_hosts chown -R nx:root ${I_R}/var/lib/nxserver chown -R nx:root ${I_R}${NX_SESS_DIR} chown -R nx:root ${I_R}${NX_ETC_DIR} chown -R nx:root ${I_R}${NX_HOME_DIR} chown nx:root ${I_R}${NX_LOGFILE}