Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Verwendung von Passwörtern in Shell Skripten

Frage Linux RedHat, CentOS, Fedora

Mitglied: winlin

winlin (Level 2) - Jetzt verbinden

08.04.2013, aktualisiert 09:39 Uhr, 1821 Aufrufe, 18 Kommentare, 1 Danke

Hallo Leute,

wie kann ich in meinem Shell Skript die Angabe von root und dessen Passwort so einstellen das es beim ausführen des Skriptes abgefragt wird?

Ich möchte nicht das es im Klartext drinsteht, so wie hier
01.
... 
02.
USER=root 
03.
PASSWORT=xxxx 
04.
...
Mitglied: 106543
08.04.2013 um 10:08 Uhr
Hi,

ich kenn mich jetzt nur wenig aus, aber z.B. in Powershel kommt da automatisch eine Abfrage, wenn ich z.B. ein Netzlaufwerk mappen will und da ´ne Berechtigung braucht

Grüße
Exze
Bitte warten ..
Mitglied: 64748
08.04.2013 um 10:36 Uhr
Hallo,

01.
#!/bin/sh 
02.
if [ $UID != 0 ]; then 
03.
    su -c kommandoxyz   # hier wird dann das root-Passwort abgefragt und muss eingegeben werden 
04.
fi
Mit anderen Worten, der Befehl su mit der -c Option führt genau das folgende Kommando also root aus und fragt ggf. nach dem Passwort von root.

Je nachdem, was Du machen möchtest, wäre es hilfreich, stattdessen sudo zu nutzen.

Markus
Bitte warten ..
Mitglied: bytecounter
08.04.2013 um 10:45 Uhr
Mit read:

01.
read "Benutzer: " name 
02.
read -p "Passwort: " password 
03.
 
04.
echo "Name: $name" 
05.
echo "Passwort: $password"
vg
Bytecounter
Bitte warten ..
Mitglied: 106543
08.04.2013 um 11:00 Uhr
Hi,

der Befehl mit Read ist nicht zu empfehlen, weil dadurch ein Abbruch der Shell zustande kommt, wenn er ein falsches Kennwort eingibt, bei Markus Version wird er direkt authentifiziert und wenn die Authentifizierung fehlschlägt, wird evt. nochmal nach dem PW gefragt.

Grüße
Exze
Bitte warten ..
Mitglied: winlin
08.04.2013 um 11:09 Uhr
Hi,

den root User sowie das Passwort benötige ich da das Shell Skript das Laufwerk einer anderen Maschine mountet. Vorschlag von Markus funktioniert so nicht, da im Logfile isufficeint permission steht. Sobald ich dann den root user und pwd im Skript hinterlege gehts wieder
Bitte warten ..
Mitglied: 106543
08.04.2013 um 11:10 Uhr
Ok dann doch @bytecounter Lösung :D
Sollte zumindest funktionieren, auch wenn´s net hübsch ist.

Grüße
Exze
Bitte warten ..
Mitglied: 64748
08.04.2013 um 11:26 Uhr
Das Hinterlegen des root-Passworts in einem Skript ist extrem gefährlich. Es gibt under Unix/Linux viele andere Möglichkeiten, das Problem zu lösen. z.B. kannst Du die Berechtigung zum Mounten der Laufwerke anders vergeben.

Markus
Bitte warten ..
Mitglied: winlin
08.04.2013 um 11:29 Uhr
code sieht so aus:
01.
#MNT-Platte wird gemountet 
02.
for i in $(seq 1 $PLATTEN); do 
03.
    if [ $MOUNTED = 0 ]; then 
04.
        echo "Datum: "$DATUM >> $LOG 
05.
        echo "Zeit: "$(date +%H:%M) >> $LOG 
06.
        echo | mount HOSTNAME:/DATA2/TEST/ /mnt/cdrom/ 
07.
        if [ $? = 0 ]; then 
08.
            ZIEL=$MNT"/"$BACKUPORDNER 
09.
            MOUNTED=1 
10.
            echo "${MNT}${DEVICE} gemountet." >>$LOG 
11.
        else 
12.
            DEVICE=$(( $DEVICE + 1 )) 
13.
        fi 
14.
    fi 
15.
done
Bitte warten ..
Mitglied: 64748
08.04.2013 um 11:43 Uhr
Wer führt denn das Skript aus?

Markus
Bitte warten ..
Mitglied: winlin
08.04.2013 um 11:47 Uhr
der root User führt es aus und der gleiche root user mounted dann das ganze
Bitte warten ..
Mitglied: 64748
08.04.2013 um 11:57 Uhr
Aber wenn root das Skript ausführt, dann hat das Skript doch alle Berechtigungen. Wieso willst denn dann noch den Benutzer und das Passwort hinterlegen?

Markus
Bitte warten ..
Mitglied: winlin
08.04.2013 um 12:00 Uhr
Keine Ahnung dachte auch wenn ich es mit root ausführe und mit root mounten will das ich keine Authenifizierung brauch. Braucht er aber doch?!?!?!?
Bitte warten ..
Mitglied: 64748
08.04.2013 um 12:04 Uhr
was meinst Du denn mit ?!?!?!?

Wenn ein Skript vom user root aufgerufen wird, dann werden alle dort aufgeführten Befehle als root ausgeführt. Kommt denn eine Fehlermeldung? wenn ja, dann poste die mal bitte hier.

Markus
Bitte warten ..
Mitglied: winlin
08.04.2013 um 12:15 Uhr
Wenn ich im Skript nicht den User und das Passwort angebe bekomme ich folgenden Error:
01.
Unable to connect to host. 
02.
Error: Insufficient permissions in the host operating system
Wenn ich aber im Skript USER=root und PWD=xxx angebe dann gehts komischerweise
Bitte warten ..
Mitglied: 64748
08.04.2013 um 12:35 Uhr
Also hast Du eine remote-Verbindung, das Skript versucht also auf einem anderen Rechner die Partitionen zu mounten?

Das geht mit ssh.
ssh root@remotecomputer "mount /this/device /to/this/directory"
auch hier wird nach dem root-Passwort gefragt.

Markus
Bitte warten ..
Mitglied: winlin
08.04.2013, aktualisiert um 13:23 Uhr
ahaaaa das habe ich nun mal oben in zeile 06 eingegeben und jetzt werde ich nach dem Passwort gefragt. Jetzt habe ich lediglich einen mount Fehler:
01.
mount: /scr2/vm/ is not a block device
Bitte warten ..
Mitglied: 64748
08.04.2013, aktualisiert um 13:22 Uhr
Es müsste dann
ssh root@$HOSTNAME "mount /DATA2/TEST/ /mnt/cdrom/" 
so aussehen (nicht nochmal $HOSTNAME: für den Pfad, Du bist ja mit ssh schon auf dem Server). Wobei ich fast vermute, dass $HOSTNAME in Deinem Skript eine Variable ist, dann fehlt oben in dem Skript das '$' Zeichen.

Markus
Bitte warten ..
Mitglied: winlin
08.04.2013 um 13:27 Uhr
Sieht grad so aus:
01.
#MNT-Platten werden gemountet 
02.
for i in $(seq 1 $PLATTEN); do 
03.
    if [ $MOUNTED = 0 ]; then 
04.
        echo "Datum: "$DATUM >> $LOG 
05.
        echo "Zeit: "$(date +%H:%M) >> $LOG 
06.
        #echo | mount ceplx270:/scr2/vm/ /mnt/cdrom/ 
07.
        echo | ssh root@lxhost013 "mount /DATA1/test /mnt/cdrom" 
08.
        if [ $? = 0 ]; then 
09.
            ZIEL=$MNT"/"$BACKUPORDNER 
10.
            MOUNTED=1 
11.
            echo "${MNT}${DEVICE} gemountet." >>$LOG 
12.
        else 
13.
            DEVICE=$(( $DEVICE + 1 )) 
14.
        fi 
15.
    fi 
16.
done
Bitte warten ..
Ähnliche Inhalte
Debian
Mit Shell Skript PHP ausfüheren
gelöst Frage von zeroblue2005Debian6 Kommentare

Hallo Zusammen, lacht nicht aber habe ich eben noch nie gemacht ich möchte eine Sh Datei haben die folgendes ...

Debian
Passwörter in Skripten die mit Dollar-Ausrufezeichen beginnen
gelöst Frage von crackhawkDebian5 Kommentare

Hallo zusammen! Sorry für den Titel, aber $ und ! sind da leider nicht erlaubt. Ich habe ein Problem ...

Linux
Eigenes Shell Skript (Bash) mit eigenen Parametern erstellen
Frage von WinLiCLILinux6 Kommentare

Hallo zusammen, ich habe eine kleine Noob Frage. Ich würde gerne ein kleines Shellskript erstellen, wo ich eigene Optionen ...

Switche und Hubs
Verwendung Twinax
gelöst Frage von Philipp711Switche und Hubs5 Kommentare

Hallo, dies ist eine Anschlussfrage an folgenden Eintrag: Kurzfassung: Wir planen einen neuen Hyper-V-Cluster mit 3 Nodes und einem ...

Neue Wissensbeiträge
Microsoft Office

Office 2010 Starter erneut auf einer frischen Windows-Version installieren

Tipp von Lochkartenstanzer vor 16 StundenMicrosoft Office6 Kommentare

Moin, vor ein paar Tagen schlug bei mir ein Kunde auf, der sein Widnows 7 geschrottet und es inklusive ...

Datenbanken

Upgrade MongoDB 3.4 auf 3.6

Erfahrungsbericht von Frank vor 18 StundenDatenbanken

Seit kurzem gibt es das 3.6 Update für die MongoDB: Sicherheit, das Sortieren, Aggregation und auch die Performance wurde ...

SAN, NAS, DAS

Backdoor Zugang und Upload-Bug in vielen Western Digital MyCloud Geräten

Information von Frank vor 18 StundenSAN, NAS, DAS2 Kommentare

James Bercegay von der Firma Gulftech hat die Fehler an Western Digital gemeldet und das Unternehmen stellt bereits ein ...

Microsoft Office

Outlook 2016 - Beim Weiterleiten keine PDF Anhänge mehr - KB4011626 entfernen

Erfahrungsbericht von Deepsys vor 21 StundenMicrosoft Office3 Kommentare

Wenn ihr feststellt das ihr beim Weiterleiten von E-Mails keine PDF Anhänge mehr versendent, dann dankt Microsoft. Diese tolle ...

Heiß diskutierte Inhalte
Windows Netzwerk
Drucker isolieren in Windows Domäne
gelöst Frage von lcer00Windows Netzwerk14 Kommentare

Hallo zusammen, habe eine Windows-AD (2012R2) in der es einen Druckerserver gibt. Mittlerweile verliere ich das Vertrauen in die ...

Server-Hardware
Veeam Backup Server stürzt alle paar Tage ab
Frage von Leo-leServer-Hardware12 Kommentare

Hallo Forum, ich habe momentan folgendes Problem. Veeam Backup and Replication 9.5 u2 auf voll gepatchten DL 380 G7 ...

Batch & Shell
Dateien verschieben mit batch
gelöst Frage von michi-ffmBatch & Shell10 Kommentare

Hallo Zusammen hat jemand evtl eine Idee? Zunächst hier das Skript: Leider werden keine UNC-Pfade unterstüzt, kann mir jemand ...

LAN, WAN, Wireless
NETZWERKAUFBAU - VERKABELUNG - GRUNDLEGENDES
Frage von hobbymieterLAN, WAN, Wireless10 Kommentare

Hallo, ich habe mal eine Frage bezüglich der LAN-Verkabelung in einem Haus. Und zwar ziehen wir demnächst ins Elternhaus, ...