commit 60bd2ccb6ce35f9ca6258d45d60d0f6ac8900b3b Author: Marcel Schwarz Date: Sun Sep 15 21:05:34 2019 +0200 Initial Commit diff --git a/docker-ce.sh b/docker-ce.sh new file mode 100644 index 0000000..a3c0959 --- /dev/null +++ b/docker-ce.sh @@ -0,0 +1,486 @@ +#!/bin/sh +set -e + +# This script is meant for quick & easy install via: +# $ curl -fsSL https://get.docker.com -o get-docker.sh +# $ sh get-docker.sh +# +# For test builds (ie. release candidates): +# $ curl -fsSL https://test.docker.com -o test-docker.sh +# $ sh test-docker.sh +# +# NOTE: Make sure to verify the contents of the script +# you downloaded matches the contents of install.sh +# located at https://github.com/docker/docker-install +# before executing. +# +# Git commit from https://github.com/docker/docker-install when +# the script was uploaded (Should only be modified by upload job): +SCRIPT_COMMIT_SHA=cfba462 + + +# The channel to install from: +# * nightly +# * test +# * stable +# * edge (deprecated) +DEFAULT_CHANNEL_VALUE="stable" +if [ -z "$CHANNEL" ]; then + CHANNEL=$DEFAULT_CHANNEL_VALUE +fi + +DEFAULT_DOWNLOAD_URL="https://download.docker.com" +if [ -z "$DOWNLOAD_URL" ]; then + DOWNLOAD_URL=$DEFAULT_DOWNLOAD_URL +fi + +DEFAULT_REPO_FILE="docker-ce.repo" +if [ -z "$REPO_FILE" ]; then + REPO_FILE="$DEFAULT_REPO_FILE" +fi + +mirror='' +DRY_RUN=${DRY_RUN:-} +while [ $# -gt 0 ]; do + case "$1" in + --mirror) + mirror="$2" + shift + ;; + --dry-run) + DRY_RUN=1 + ;; + --*) + echo "Illegal option $1" + ;; + esac + shift $(( $# > 0 ? 1 : 0 )) +done + +case "$mirror" in + Aliyun) + DOWNLOAD_URL="https://mirrors.aliyun.com/docker-ce" + ;; + AzureChinaCloud) + DOWNLOAD_URL="https://mirror.azure.cn/docker-ce" + ;; +esac + +command_exists() { + command -v "$@" > /dev/null 2>&1 +} + +is_dry_run() { + if [ -z "$DRY_RUN" ]; then + return 1 + else + return 0 + fi +} + +deprecation_notice() { + distro=$1 + date=$2 + echo + echo "DEPRECATION WARNING:" + echo " The distribution, $distro, will no longer be supported in this script as of $date." + echo " If you feel this is a mistake please submit an issue at https://github.com/docker/docker-install/issues/new" + echo + sleep 10 +} + +get_distribution() { + lsb_dist="" + # Every system that we officially support has /etc/os-release + if [ -r /etc/os-release ]; then + lsb_dist="$(. /etc/os-release && echo "$ID")" + fi + # Returning an empty string here should be alright since the + # case statements don't act unless you provide an actual value + echo "$lsb_dist" +} + +add_debian_backport_repo() { + debian_version="$1" + backports="deb http://ftp.debian.org/debian $debian_version-backports main" + if ! grep -Fxq "$backports" /etc/apt/sources.list; then + (set -x; $sh_c "echo \"$backports\" >> /etc/apt/sources.list") + fi +} + +echo_docker_as_nonroot() { + if is_dry_run; then + return + fi + if command_exists docker && [ -e /var/run/docker.sock ]; then + ( + set -x + $sh_c 'docker version' + ) || true + fi + your_user=your-user + [ "$user" != 'root' ] && your_user="$user" + # intentionally mixed spaces and tabs here -- tabs are stripped by "<<-EOF", spaces are kept in the output + echo "If you would like to use Docker as a non-root user, you should now consider" + echo "adding your user to the \"docker\" group with something like:" + echo + echo " sudo usermod -aG docker $your_user" + echo + echo "Remember that you will have to log out and back in for this to take effect!" + echo + echo "WARNING: Adding a user to the \"docker\" group will grant the ability to run" + echo " containers which can be used to obtain root privileges on the" + echo " docker host." + echo " Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface" + echo " for more information." + +} + +# Check if this is a forked Linux distro +check_forked() { + + # Check for lsb_release command existence, it usually exists in forked distros + if command_exists lsb_release; then + # Check if the `-u` option is supported + set +e + lsb_release -a -u > /dev/null 2>&1 + lsb_release_exit_code=$? + set -e + + # Check if the command has exited successfully, it means we're in a forked distro + if [ "$lsb_release_exit_code" = "0" ]; then + # Print info about current distro + cat <<-EOF + You're using '$lsb_dist' version '$dist_version'. + EOF + + # Get the upstream release info + lsb_dist=$(lsb_release -a -u 2>&1 | tr '[:upper:]' '[:lower:]' | grep -E 'id' | cut -d ':' -f 2 | tr -d '[:space:]') + dist_version=$(lsb_release -a -u 2>&1 | tr '[:upper:]' '[:lower:]' | grep -E 'codename' | cut -d ':' -f 2 | tr -d '[:space:]') + + # Print info about upstream distro + cat <<-EOF + Upstream release is '$lsb_dist' version '$dist_version'. + EOF + else + if [ -r /etc/debian_version ] && [ "$lsb_dist" != "ubuntu" ] && [ "$lsb_dist" != "raspbian" ]; then + if [ "$lsb_dist" = "osmc" ]; then + # OSMC runs Raspbian + lsb_dist=raspbian + else + # We're Debian and don't even know it! + lsb_dist=debian + fi + dist_version="$(sed 's/\/.*//' /etc/debian_version | sed 's/\..*//')" + case "$dist_version" in + 9) + dist_version="stretch" + ;; + 8|'Kali Linux 2') + dist_version="jessie" + ;; + esac + fi + fi + fi +} + +semverParse() { + major="${1%%.*}" + minor="${1#$major.}" + minor="${minor%%.*}" + patch="${1#$major.$minor.}" + patch="${patch%%[-.]*}" +} + +ee_notice() { + echo + echo + echo " WARNING: $1 is now only supported by Docker EE" + echo " Check https://store.docker.com for information on Docker EE" + echo + echo +} + +ee_promo() { + # Randomly select an advertisement + echo + echo "** DOCKER ENGINE - ENTERPRISE **" + echo + SHORT_URL="" + case $(shuf -i 0-1 -n 1) in + 0) + echo "Test drive additional security features by activating Docker Engine - Enterprise." + echo + echo " * Leverage FIPS 140-2 validated encryption" + echo " * Run only trusted images with digital signature enforcement" + SHORT_URL="https://dockr.ly/engine1" + ;; + 1) + echo "If you’re ready for production workloads, Docker Engine - Enterprise also includes:" + echo + echo " * SLA-backed technical support" + echo " * Extended lifecycle maintenance policy for patches and hotfixes" + echo " * Access to certified ecosystem content" + SHORT_URL="https://dockr.ly/engine2" + ;; + esac + echo + echo "** Learn more at ${SHORT_URL} **" + echo + echo "ACTIVATE your own engine to Docker Engine - Enterprise using:" + echo + echo " sudo docker engine activate" + echo + sleep 10 +} + +do_install() { + echo "# Executing docker install script, commit: $SCRIPT_COMMIT_SHA" + + if command_exists docker; then + docker_version="$(docker -v | cut -d ' ' -f3 | cut -d ',' -f1)" + MAJOR_W=1 + MINOR_W=10 + + semverParse "$docker_version" + + shouldWarn=0 + if [ "$major" -lt "$MAJOR_W" ]; then + shouldWarn=1 + fi + + if [ "$major" -le "$MAJOR_W" ] && [ "$minor" -lt "$MINOR_W" ]; then + shouldWarn=1 + fi + + cat >&2 <<-'EOF' + Warning: the "docker" command appears to already exist on this system. + + If you already have Docker installed, this script can cause trouble, which is + why we're displaying this warning and provide the opportunity to cancel the + installation. + + If you installed the current Docker package using this script and are using it + EOF + + if [ $shouldWarn -eq 1 ]; then + cat >&2 <<-'EOF' + again to update Docker, we urge you to migrate your image store before upgrading + to v1.10+. + + You can find instructions for this here: + https://github.com/docker/docker/wiki/Engine-v1.10.0-content-addressability-migration + EOF + else + cat >&2 <<-'EOF' + again to update Docker, you can safely ignore this message. + EOF + fi + + cat >&2 <<-'EOF' + + You may press Ctrl+C now to abort this script. + EOF + ( set -x; sleep 20 ) + fi + + user="$(id -un 2>/dev/null || true)" + + sh_c='sh -c' + if [ "$user" != 'root' ]; then + if command_exists sudo; then + sh_c='sudo -E sh -c' + elif command_exists su; then + sh_c='su -c' + else + cat >&2 <<-'EOF' + Error: this installer needs the ability to run commands as root. + We are unable to find either "sudo" or "su" available to make this happen. + EOF + exit 1 + fi + fi + + if is_dry_run; then + sh_c="echo" + fi + + # perform some very rudimentary platform detection + lsb_dist=$( get_distribution ) + lsb_dist="$(echo "$lsb_dist" | tr '[:upper:]' '[:lower:]')" + + case "$lsb_dist" in + + ubuntu) + if command_exists lsb_release; then + dist_version="$(lsb_release --codename | cut -f2)" + fi + if [ -z "$dist_version" ] && [ -r /etc/lsb-release ]; then + dist_version="$(. /etc/lsb-release && echo "$DISTRIB_CODENAME")" + fi + ;; + + debian|raspbian) + dist_version="$(sed 's/\/.*//' /etc/debian_version | sed 's/\..*//')" + case "$dist_version" in + 9) + dist_version="stretch" + ;; + 8) + dist_version="jessie" + ;; + esac + ;; + + centos) + if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then + dist_version="$(. /etc/os-release && echo "$VERSION_ID")" + fi + ;; + + rhel|ol|sles) + ee_notice "$lsb_dist" + exit 1 + ;; + + *) + if command_exists lsb_release; then + dist_version="$(lsb_release --release | cut -f2)" + fi + if [ -z "$dist_version" ] && [ -r /etc/os-release ]; then + dist_version="$(. /etc/os-release && echo "$VERSION_ID")" + fi + ;; + + esac + + # Check if this is a forked Linux distro + check_forked + + # Run setup for each distro accordingly + case "$lsb_dist" in + ubuntu|debian|raspbian) + pre_reqs="apt-transport-https ca-certificates curl" + if [ "$lsb_dist" = "debian" ]; then + # libseccomp2 does not exist for debian jessie main repos for aarch64 + if [ "$(uname -m)" = "aarch64" ] && [ "$dist_version" = "jessie" ]; then + add_debian_backport_repo "$dist_version" + fi + fi + + if ! command -v gpg > /dev/null; then + pre_reqs="$pre_reqs gnupg" + fi + apt_repo="deb [arch=$(dpkg --print-architecture)] $DOWNLOAD_URL/linux/$lsb_dist $dist_version $CHANNEL" + ( + if ! is_dry_run; then + set -x + fi + $sh_c 'apt-get update -qq >/dev/null' + $sh_c "apt-get install -y -qq $pre_reqs >/dev/null" + $sh_c "curl -fsSL \"$DOWNLOAD_URL/linux/$lsb_dist/gpg\" | apt-key add -qq - >/dev/null" + $sh_c "echo \"$apt_repo\" > /etc/apt/sources.list.d/docker.list" + $sh_c 'apt-get update -qq >/dev/null' + ) + pkg_version="" + if [ -n "$VERSION" ]; then + if is_dry_run; then + echo "# WARNING: VERSION pinning is not supported in DRY_RUN" + else + # Will work for incomplete versions IE (17.12), but may not actually grab the "latest" if in the test channel + pkg_pattern="$(echo "$VERSION" | sed "s/-ce-/~ce~.*/g" | sed "s/-/.*/g").*-0~$lsb_dist" + search_command="apt-cache madison 'docker-ce' | grep '$pkg_pattern' | head -1 | cut -d' ' -f 4" + pkg_version="$($sh_c "$search_command")" + echo "INFO: Searching repository for VERSION '$VERSION'" + echo "INFO: $search_command" + if [ -z "$pkg_version" ]; then + echo + echo "ERROR: '$VERSION' not found amongst apt-cache madison results" + echo + exit 1 + fi + pkg_version="=$pkg_version" + fi + fi + ( + if ! is_dry_run; then + set -x + fi + $sh_c "apt-get install -y -qq --no-install-recommends docker-ce$pkg_version >/dev/null" + ) + echo_docker_as_nonroot + ee_promo + exit 0 + ;; + centos|fedora) + yum_repo="$DOWNLOAD_URL/linux/$lsb_dist/$REPO_FILE" + if ! curl -Ifs "$yum_repo" > /dev/null; then + echo "Error: Unable to curl repository file $yum_repo, is it valid?" + exit 1 + fi + if [ "$lsb_dist" = "fedora" ]; then + pkg_manager="dnf" + config_manager="dnf config-manager" + enable_channel_flag="--set-enabled" + disable_channel_flag="--set-disabled" + pre_reqs="dnf-plugins-core" + pkg_suffix="fc$dist_version" + else + pkg_manager="yum" + config_manager="yum-config-manager" + enable_channel_flag="--enable" + disable_channel_flag="--disable" + pre_reqs="yum-utils" + pkg_suffix="el" + fi + ( + if ! is_dry_run; then + set -x + fi + $sh_c "$pkg_manager install -y -q $pre_reqs" + $sh_c "$config_manager --add-repo $yum_repo" + + if [ "$CHANNEL" != "stable" ]; then + $sh_c "$config_manager $disable_channel_flag docker-ce-*" + $sh_c "$config_manager $enable_channel_flag docker-ce-$CHANNEL" + fi + $sh_c "$pkg_manager makecache" + ) + pkg_version="" + if [ -n "$VERSION" ]; then + if is_dry_run; then + echo "# WARNING: VERSION pinning is not supported in DRY_RUN" + else + pkg_pattern="$(echo "$VERSION" | sed "s/-ce-/\\\\.ce.*/g" | sed "s/-/.*/g").*$pkg_suffix" + search_command="$pkg_manager list --showduplicates 'docker-ce' | grep '$pkg_pattern' | tail -1 | awk '{print \$2}'" + pkg_version="$($sh_c "$search_command")" + echo "INFO: Searching repository for VERSION '$VERSION'" + echo "INFO: $search_command" + if [ -z "$pkg_version" ]; then + echo + echo "ERROR: '$VERSION' not found amongst $pkg_manager list results" + echo + exit 1 + fi + # Cut out the epoch and prefix with a '-' + pkg_version="-$(echo "$pkg_version" | cut -d':' -f 2)" + fi + fi + ( + if ! is_dry_run; then + set -x + fi + $sh_c "$pkg_manager install -y -q docker-ce$pkg_version" + ) + echo_docker_as_nonroot + ee_promo + exit 0 + ;; + esac + exit 1 +} + +# wrapped up in a function so that we have some protection against only getting +# half the file during "curl | sh" +do_install diff --git a/help.txt b/help.txt new file mode 100644 index 0000000..d33d891 --- /dev/null +++ b/help.txt @@ -0,0 +1,60 @@ +OPENVPN: + + 1. Basic install Debian 7 "Wheezy" + 2. Run "wget http://swupdate.openvpn.org/as/openvp... + 3. After downloading, run "dpkg -i openvpn-as-1.8.5-..."; + 4. Edit the password for user openvpn: "passwd openvpn" + 5. Go to the ip address of your server, log in and enjoy your new OpenVPN installation on Debian 7 Wheezy. + +TEAMSPEAK: + + //neuen User anlegen + adduser ts3 + + //anmelden an diesem User + su ts3 + + //in das homeverzeichnis wechseln + cd ~ + + //teamspeak datei ablegen und ggf. entpacken + wget {url} + + tar -xzvf {datei} + + //Das erste Mal starten und infos rausschreiben + cd {verzeichnis mit TS} + ./ts3server_startscript.sh start + + //Autostart einrichten als User "root" + nano /etc/init.d/{nameDesAutostarts} + + //qloc.de datei fuer ts3 einbinden + siehe "teamspeak.sh" -> 'User' und 'DIR' aendern! + + //berechtigung setzen + chmod 755 /etc/init.d/{nameDesAutostarts} + + //startscript updaten fuer den autostart + update-rc.d {nameDesAutostarts} defaults + + //Neustarten + shutdown -r now + +MYSQL-SERVER: + + Zugriff: + http://meineip/phpmyadmin/ + + Zugriff von Navicat: + 1. run the command nano /etc/mysql/my.cnf and comment bind-address = 127.0.0.1 using the # symbol + 2. login in SQL with: mysql -u root -p + 3. run the following commands: + GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; + FLUSH PRIVILEGES; + grant all privileges on *.* to bill@localhost identified by 'pass' with grant option; + + 4. Update your Password: + UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root'; + + 5. restart your mysql server once. diff --git a/icaotix.sh b/icaotix.sh new file mode 100644 index 0000000..a3f29ef --- /dev/null +++ b/icaotix.sh @@ -0,0 +1,154 @@ +#!/bin/bash + +case "$1" in #Erster Parameter in nach der Datei in der Konsole + +installiere) + case "$2" in + + tools) + echo "Tools werden installiert." + sudo apt-get install bleachbit nano xrdp htop bash-completion dialog + ;; + + vnc) + echo "Der Tightvncserver wird installiert." + sudo apt-get install xorg lxde-core tightvncserver + ;; + + docker-easy) + echo "Docker-ce wird installiert." + sudo apt-get update + sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common + curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - + sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" + sudo apt-get update + sudo apt-get install docker-ce docker-ce-cli containerd.io + sudo docker run hello-world + ;; + + docker-ce) + echo "Docker-ce wird installiert." + chmod +x docker-ce.sh + ./docker-ce.sh + ;; + + openvpn) + echo "OpenVPN wird versucht zu installieren." + echo "Installationsdatei in diesem Ordner platzieren:" + pwd + read -p "und Enter dreucken" enter + read -p "Name der Datei: " name + if [ -f $name ] + then + dpkg -i $name + passwd openvpn + else + echo "Datei nicht gefunden." + fi + ;; + + mysql) + echo "MySQL wird installiert." + sudo apt-get install mysql-server mysql-client libapache2-mod-auth-mysql phpmyadmin + ;; + + gui) + sudo apt-get install gnome-desktop-environment xorg + ;; + + *) + echo "Leider nichts passendes gefunden. + Es gibt: + 1. tools + 2. vnc + 3. docker-easy + 4. docker-ce + 5. openvnp + 6. mysql + 7. gui" + ;; + + esac + ;; +vnc) + case "$2" in + start) + echo "start" + tightvncserver :1 + ;; + + stop) + echo "stop" + tightvncserver -kill :1 + ;; + + log) + nano /root/.vnc/vps10040.qloc.de:1.log + ;; + + *) + echo "Unbekannter Command. + Es gibt: + 1. start + 2. stop + 3. log" + ;; + + esac + ;; + + +update) + echo "Das System wird geupdated." + sudo apt-get update + sudo apt-get upgrade + sudo apt-get dist-upgrade + sudo apt-get autoremove + sudo apt-get autoclean + ;; + +bleachclean) + bleachbit -c adobe_reader.cache adobe_reader.mru adobe_reader.tmp amsn.cache amsn.chat_logs amule.logs amule.tmp apt.autoclean apt.autoremove apt.clean apt.package_lists audacious.cache audacious.log audacious.mru bash.history beagle.cache beagle.index beagle.logs chromium.cache chromium.cookies chromium.current_session chromium.dom chromium.form_history chromium.history chromium.passwords chromium.search_engines chromium.vacuum d4x.history deepscan.backup deepscan.ds_store deepscan.thumbs_db deepscan.tmp easytag.history easytag.logs elinks.history emesene.cache emesene.logs epiphany.cache epiphany.cookies epiphany.passwords epiphany.places evolution.cache exaile.cache exaile.downloaded_podcasts exaile.log filezilla.mru firefox.cache firefox.cookies firefox.crash_reports firefox.dom firefox.download_history firefox.forms firefox.passwords firefox.session_restore firefox.site_preferences firefox.url_history firefox.vacuum flash.cache flash.cookies gedit.recent_documents gftp.cache gftp.logs gimp.tmp gl-117.debug_logs gnome.run gnome.search_history google_chrome.cache google_chrome.cookies google_chrome.dom google_chrome.form_history google_chrome.history google_chrome.passwords google_chrome.search_engines google_chrome.session google_chrome.vacuum google_earth.temporary_files google_toolbar.search_history gpodder.cache gpodder.vacuum gwenview.recent_documents hippo_opensim_viewer.cache hippo_opensim_viewer.logs java.cache kde.cache kde.recent_documents kde.tmp konqueror.cookies konqueror.current_session konqueror.url_history libreoffice.cache libreoffice.history liferea.cache liferea.cookies liferea.vacuum links2.history midnightcommander.history miro.cache miro.logs nautilus.history nexuiz.cache octave.history openofficeorg.cache openofficeorg.recent_documents opera.cache opera.cookies opera.current_session opera.dom opera.download_history opera.search_history opera.url_history pidgin.cache pidgin.logs realplayer.cookies realplayer.history realplayer.logs recoll.index rhythmbox.cache screenlets.logs seamonkey.cache seamonkey.chat_logs seamonkey.cookies seamonkey.download_history seamonkey.history secondlife_viewer.Cache secondlife_viewer.Logs skype.chat_logs sqlite3.history system.cache system.clipboard system.custom system.desktop_entry system.localizations system.recent_documents system.rotated_logs system.tmp system.trash thumbnails.cache thunderbird.cache thunderbird.cookies thunderbird.index thunderbird.passwords thunderbird.vacuum transmission.cache tremulous.cache vim.history vlc.mru vuze.backup_files vuze.cache vuze.logs vuze.tmp warzone2100.logs wine.tmp winetricks.temporary_files x11.debug_logs xchat.logs xine.cache yum.clean_all yum.vacuum + ;; + +hacker) + printf "\e[32m\n" + while : + do + for i in {1..16} + do + ((r = $RANDOM % 2)) + if (($RANDOM % 5 == 1)) + then + if (($RANDOM % 4 == 1)) + then + v+="\e[1m $r " + else + v+="\e[2m $r " + fi + else + v+=" " + fi + done + printf "$v\n" + v="" + done + ;; + +help) + cat help.txt + ;; + +*) + echo "Unbekannter Command. + Es gibt: + 1. installiere + 2. vnc + 3. update + 4. bleachclean + 5. hacker + 6. help (Infos fuer TS3, OpenVPN und MySQL)" + ;; + +esac +exit 0 \ No newline at end of file diff --git a/teamspeak.sh b/teamspeak.sh new file mode 100644 index 0000000..c807b4c --- /dev/null +++ b/teamspeak.sh @@ -0,0 +1,36 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: teamspeak3 +# Required-Start: $local_fs $network +# Required-Stop: $local_fs $network +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Description: Teamspeak 3 Server +### END INIT INFO + +# INIT Script by www.qloc.de +###################################### +# Customize values for your needs: "User"; "DIR" + +USER="teamspeak3" +DIR="/usr/local/teamspeak3/teamspeak3-server_linux-amd64" +###### Teamspeak 3 server start/stop script ###### +case "$1" in +start) +su $USER -c "${DIR}/ts3server_startscript.sh start" +;; +stop) +su $USER -c "${DIR}/ts3server_startscript.sh stop" +;; +restart) +su $USER -c "${DIR}/ts3server_startscript.sh restart" +;; +status) +su $USER -c "${DIR}/ts3server_startscript.sh status" +;; +*) +echo "Usage: {start|stop|restart|status}" >&2 +exit 1 +;; +esac +exit 0 \ No newline at end of file