Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/nextcloudpi.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornachoparker <nacho@ownyourbits.com>2017-11-27 13:12:55 +0300
committernachoparker <nacho@ownyourbits.com>2017-11-27 13:12:55 +0300
commit58d4ca62448b868fccf8e01e569df8145e8b7bc0 (patch)
tree32c9f7e3508b8bbd812b9f51fa1c1208e1b1da7c
parent98c664938f0133fc351bbfe435d85c4a4e896514 (diff)
added SSHv0.38.0
-rwxr-xr-xetc/library.sh5
-rw-r--r--etc/nextcloudpi-config.d/SSH.sh78
2 files changed, 82 insertions, 1 deletions
diff --git a/etc/library.sh b/etc/library.sh
index c177abc6..a577c2f1 100755
--- a/etc/library.sh
+++ b/etc/library.sh
@@ -96,8 +96,11 @@ function is_active_script()
local SCRIPT=$1
unset is_active
source "$SCRIPT"
+ [[ $( type -t is_active ) == function ]] && {
+ is_active
+ return $?
+ }
grep -q "^ACTIVE_=yes" "$SCRIPT" && return 0
- [[ $( type -t is_active ) == function ]] && is_active
)
}
diff --git a/etc/nextcloudpi-config.d/SSH.sh b/etc/nextcloudpi-config.d/SSH.sh
new file mode 100644
index 00000000..8033404c
--- /dev/null
+++ b/etc/nextcloudpi-config.d/SSH.sh
@@ -0,0 +1,78 @@
+#!/bin/bash
+
+# Activate/deactivate SSH
+#
+#
+# Copyleft 2017 by Courtney Hicks
+# GPL licensed (see end of file) * Use at your own risk!
+#
+
+ACTIVE_=no
+USER_=pi
+PASS_=raspberry
+CONFIRM_=raspberry
+
+DESCRIPTION="Activate or deactivate SSH"
+
+install() { :; }
+
+is_active()
+{
+ systemctl status ssh &>/dev/null
+}
+
+configure()
+{
+ [[ $ACTIVE_ != "yes" ]] && {
+ systemctl disable ssh
+ echo "SSH disabled"
+ return 0
+ }
+
+ # Check for bad ideas
+ [[ "$USER_" == "pi" ]] && [[ "$PASS_" == "raspberry" ]] && {
+ echo "Refusing to use the default Raspbian user and password. It's insecure"
+ return 1
+ }
+
+ # Change credentials
+ id "$USER_" &>/dev/null || useradd "$USER_"
+ echo -e "$PASS_\n$CONFIRM_" | passwd "$USER_" || return 1
+
+ # Check for insecure default password ( taken from old jessie method )
+ local SHADOW="$( grep -E '^pi:' /etc/shadow )"
+ test -n "${SHADOW}" && {
+ local SALT=$(echo "${SHADOW}" | sed -n 's/pi:\$6\$//;s/\$.*//p')
+ local HASH=$(mkpasswd -msha-512 raspberry "$SALT")
+
+ grep -q "${HASH}" <<< "${SHADOW}" && {
+ systemctl stop ssh
+ systemctl disable ssh
+ echo "The user pi is using the default password. Refusing to activate SSH"
+ echo "SSH disabled"
+ return 1
+ }
+ }
+
+ # Enable
+ systemctl enable ssh
+ systemctl start ssh
+ echo "SSH enabled"
+}
+
+# License
+#
+# This script is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This script is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this script; if not, write to the
+# Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+# Boston, MA 02111-1307 USA