webhostingtalk.nl
advertentie
advertentie

Evenementen voor de komende 60 Dag(en)

Pagina 1 van de 2 1 2 LaatsteLaatste
Resultaten 1 tot 15 van de 21
          

  1.  
    #1
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    hulp gevraagd bij bash script.

    Hoi,

    Ik ben bezig met een update script dat in staat is alle servers in 1 klik te updaten.

    Hierbij gebruik ik het voorbeeld van het update.script van weal welke op DA servers wordt gebruikt.
    Echter updaten van alle servers die in de serverlijst.txt staan werkt correct, echter ik zou graag de optie hebben als ik een taak wil uitvoeren dat mij eerst het volgende wordt gevraagd:

    do you want update al servers in the serverlist? (y/n)
    Indien gekozen voor yes dan gebruik maken van standaard serverlijst.txt.
    indien gekozen voor no dan optie om servernummer gescheiden door comma teken opgeven, vervolgens wordt er een nieuwe tijdelijke serverlijst2.txt aangemaakt en worden alleen de gekozen servers geupdate.

    het script voert uit: (voorbeeld)
    pssh -h serverlijst.txt -P mv /etc/sysctl.conf /etc/sysctl.conf.bak

    De bedoeling is dus dat aan de hand van de keuzemogelijkheid die hiervoor dus komt de code "serverlijst.txt" moet worden aangepast.
    (moet dus een variable instelling zijn ofzo..?)

    p.s, pssh werkt met de volgende indeling in het tekst bestand:
    server1.nl:22 root
    server2.nl:22 root

    dus ik denk dat er nog een aparte template gemaakt moet worden welke de ingeven servers bij de keuze omzet, dus:
    1 = server1.nl:22 root
    2 = server2.nl:22 root

    Ik hoop dat iemand me kan helpen, ben abusloot geen programeur, maar vindt het best leuk hier mee bezig te zijn en te leren, allweol de bash cursus op internet erg ingewikkeld is.


  2.  
    #2
    Ouwe rot, 52 Jaar
    1.742 Berichten
    Ingeschreven
    24/08/02

    Locatie
    Gaanderen

    0 Berichten zijn liked

    Herbert is offline.

    Registrar SIDN: nee
    KvK nummer: 09153441
    Ondernemingsnummer: nvt

    Even gezocht, bedoel je zoiets?

    Code:
    #!/bin/bash
    
    echo "We will now start installing the tools"
    echo ""
    echo ""
    echo ""
    echo ""
    echo ""
    echo "Would you like to install the default tool package n/Y?"
    echo "If you decided not to install the default package you will be prompted for each indvidual tool"
    read a
    if [[ $a == "Y" || $a == "y" ]]; then
    
      echo "Installing the default pentest tool package"
      yum install p0f
      yum install nbtscan
    
    
    else
      echo "You will now be prompted to install the "normal" tool list on an individual basis"
      echo ""
      echo "To speed the process, the default is YES (Just hit enter or y), otherwise hit n to NOT install the specified tool"
      echo ""
      echo ""
      echo "Starting the individual install process"
      echo ""
      echo ""
    
      echo "P0f v2 is a versatile passive OS fingerprinting tool. P0f can identify the system on machines that talk thru or near your box. p0f will also check masquerading and firewall presence, the distance to the remote system and its uptime, other guy's network hookup (DSL, OC3, avian carriers) and his ISP."
      echo ""
      echo ""
      echo "Would you like to install p0f? n/Y?"
      read a
      if [[ $a == "N" || $a == "n" ]]; then
    
        echo "p0f will not be installed."
      else
        echo "Installing p0f"
    
        echo "NBTscan is a program for scanning IP networks for NetBIOS name information. It sends a NetBIOS status query to each address in supplied range and lists received information in human readable form. "
        echo ""
        echo ""
        echo "Would you like to install Nbtscan n/Y"
        read a
        if [[ $a == "N" || $a == "n" ]]; then
          echo "Nbtscan will not be installed."
        else
          echo "Installing Nbtscan"
    
          yum install -y nbtscan
        fi
      fi
    fi


  3.  
    #3
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    Hoi, ehh tja nee,

    De bedoeling is dat serverlijst.txt word ingevuld in de volgende lijn als men kiest voor y:
    pssh -h [hier komt serverlijst.txt] -P mv /etc/sysctl.conf /etc/sysctl.conf.bak
    Noot, serverlijst.txt is gewoon al aanwezig op de server, in zelfde direcory en bevat alle servers.

    Echter, waneer men kiest voor de optie "no" dan dient men de servernummers handmatig in te voeren, zoiets:
    # please enter the server numbers you want to update and hit return when ready:

    Na hit return moet het script een .txt bestand aanmaken, hierbij moet het script weten dat 1 voor server1.nl:22 root staat en dat 2 voor server2.nl:22 root staat enzovoorts.
    (deze info kan het script natuurlijk uitlezen uit een template, zie eerder bericht)
    Script maakt dan bijvoorbeeld tijdelijk.txt aan met de volgende inhoud:
    server1.nl:22 root
    server2.nl:22 root

    vervolgens wordt dit txt bestand gebruikt in de commanda die de update uitvoert:
    pssh -h tijdelijk.txt -P mv /etc/sysctl.conf /etc/sysctl.conf.bak


    Hoop dat ik het een beetje goed uitlegt?

  4. advertentie



  5.  
    #4
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    Zou er eerder zo uitmoeten zien, maar het laatste stukje .txt bestand aanmaken doormiddel van een template met de servernummers en hostnamen enzo weet ik niet, ben nogal noob in deze..

    PHP Code:
    #!/bin/bash


    echo ""
    echo ""
    echo "Would you like to update all server in serverlist? y/n?"
    echo "Choiche NO if you want specify the servers that you want to update"
    read a
    if [[ $a == "Y" || $a == "y" ]]; then

      
    echo "Updating all servers.."
    pssh -h serverlijst.txt -P mv /etc/sysctl.conf /etc/sysctl.conf.bak


    else
      echo -
    "Input the server numbers comma separated you want to update? "
      
    read server numbers, use template.txt, and convert them into new filetijdelijk.txt

    pssh 
    -h tijdelijk.txt -P mv /etc/sysctl.conf /etc/sysctl.conf.bak
    rm tijdelijk
    .txt -y

      

      
    echo "Sysctl.conf is updated! 
    Echter een mooiere manier zou zijn dat daar waar het tekst bestand in de command staat een variable zou zijn wat wordt ingevuld na keuze yes of no, scheelt een hoop regels volgens mij.


  6.  
    #5
    geregistreerd gebruiker
    24 Berichten
    Ingeschreven
    26/04/10

    Locatie
    wel van toepassing

    0 Berichten zijn liked

    Lekensteyn is offline.

    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Zoiets:
    Code:
    #!/bin/bash
    printf "Would you like to update all servers in serverlist? [Y,N]: "
    while true;do
    	read yesno
    	case "$yesno" in
    		[Yy])
    			echo "Updating all servers..."
    			pssh -h serverlijst.txt -P mv /etc/sysctl.conf /etc/sysctl.conf.bak
    			echo "Done."
    			;;
    		[Nn])
    			rm -a tijdelijk.txt
    			TEMPLATE=`cat template.txt`
    			echo "Enter a comma-separated list of server numbers you want to update."
    			printf "Input: "
    			IFS=',' while read inp;do
    				printf "$template" "$inp" >> tijdelijk.txt
    			done
    			pssh -h tijdelijk.txt -P mv /etc/sysctl.conf /etc/sysctl.conf.bak
    			rm tijdelijk.txt
    			;;
    		*)
    			printf "Please enter only Y or N: "
    			;;
    	esac
    done
    In template.txt staat iets als "server%s.nl:22 root"


    Of moet er een regel uit serverlijst.txt worden gehaald die matcht met de servernummer?


  7.  
    #6
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    Belangrijk is dat wanneer ik waarde 1 opgeef dat de server weet dat het hier gaat om server1.nl en deze in de txt kan zetten.

    Ga het straks ff proberen, ziet er in ieder geval intressant uit.
    Ben nu ff met andere scriptjes bezig zoals servers automatisch configureren via autologin zonder wachtwoord, en al dat soort dingen.

    jemig waar ben ik aan begonnen?

    Wel leuk trouwens op deze manier, run pssh.update.script en je krijgt dan allemaal updates die je kan uitvoeren op alle servers.
    Tja kan ook alle commando,s handmatig via pssh doorgeven, maar zo,n leuk update scriptje is dan wel grappig en zelfs de onhandige harie zou dan nog een update op alle servers kunnen doorvoeren doordat alles door mij vooraf geprogrammeerd is.

    afijn, mijn eerste bash scriptje projectje..


  8.  
    #7
    geregistreerd gebruiker
    24 Berichten
    Ingeschreven
    26/04/10

    Locatie
    wel van toepassing

    0 Berichten zijn liked

    Lekensteyn is offline.

    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Wees voorzichtig met commando's, voor je het weet heb je het hele netwerk kapot gemaakt
    Leuke verhalen ^^ http://www.cyberciti.biz/tips/my-10-...-mistakes.html

    In dat scriptje zou je nog foutenafhandeling kunnen inbouwen, voor het geval template.txt niet bestaat, er geen cijfers zijn opgegeven als server, enz.


  9.  
    #8
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    IFS=',' while read inp;do

    volgens mij klopt die niet helemaal:
    PHP Code:
    ./testline 16syntax error near unexpected token `do'
    ./test: line 16: 
    `                              IFS=',' while read inp;do


  10.  
    #9
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    Oorspronkelijk geplaatst door Lekensteyn Bekijk Berichten
    In dat scriptje zou je nog foutenafhandeling kunnen inbouwen, voor het geval template.txt niet bestaat, er geen cijfers zijn opgegeven als server, enz.
    Inderdaad, ik heb er al over nagedacht, moet indderdaad wel goed beveiligd zijn, maar daar denken we nog steeds over na.
    In ieder geval worden updates eerst uitvoerig op 1 of 2 servers getest, daarna mag de rest erdoor heen.


  11.  
    #10
    geregistreerd gebruiker
    24 Berichten
    Ingeschreven
    26/04/10

    Locatie
    wel van toepassing

    0 Berichten zijn liked

    Lekensteyn is offline.

    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Zet die IFS=',' eens op een aparte regel?
    Nog een foutje op jullie site:
    http://www.ccchosting.nl/serverstatus.html "Couldn't select database."
    Helemaal onderin elke pagina (home, bedrijfsinformatie, ...) zie je nog de URL's in de vorm index.php?id=<id>


  12.  
    #11
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    betreffende de fouten op onze pagina, ik ben ervan op de hoogte, staat al enige tijd op me todo list, moet daar inderdaad echt eens naar gaan kijken.

    afijn, commando voor alle server werkt.
    maar, komt niet terug in de command line, blijft na uitvoeren hangen zeg maar, CTRL+C om af te sluiten.

    Bij keuze servers bestand tijdelijk.txt wordt wel aangemaakt, maar blijft leeg, rm functie ff uit gezet om te testen.
    Ook deze blijft trouwens hangen, CTRL+C om af te sluiten

    EDIT:
    printf "$template" "$inp" >> tijdelijk.txt
    aangepast in:
    printf "$TEMPLATE" "$inp" >> tijdelijk.txt

    Tijdelijk.txt wordt nu wel correct aangemaakt.


  13.  
    #12
    geregistreerd gebruiker
    24 Berichten
    Ingeschreven
    26/04/10

    Locatie
    wel van toepassing

    0 Berichten zijn liked

    Lekensteyn is offline.

    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Ooops, ik vergat een break toe te voegen
    Voeg voor de ;; in de yes en no cases 'break' to:
    Code:
    [Yy])
    [...]
    			echo "Done."
    			break
    			;;
    		[Nn])
    [..]
    			rm tijdelijk.txt
    			break
    			;;
    (met [...] bedoel ik dat daar nog code moet, niet letterlijk overnemen)

    Edit: de lus blijft, het heeft met while read a te maken, even een betere alternatief bedenken.


  14.  
    #13
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    Thanks, dit brengt ons bij keuze Y weer terug naar de command line.
    Echter de N optie werkt niet, bestand tijdelijk.txt wordt wel correct aangemaakt maar blijft hangen, ook wordt het bestand niet verwijderd en blijft ondanks de rm functie gewoon staan.

    ps, rm -a wordt ook niet ondersteund..
    Heb er maar ff een force (-f) optie aan gegeven


  15.  
    #14
    geregistreerd gebruiker
    24 Berichten
    Ingeschreven
    26/04/10

    Locatie
    wel van toepassing

    0 Berichten zijn liked

    Lekensteyn is offline.

    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Oh, dat moest 'rm -f' zijn, ik had een testbestand genaamd 'a'.
    Ik heb een oplossing gevonden.
    Vervang:
    Code:
    			IFS=',' while read inp;do
    				printf "$template" "$inp" >> tijdelijk.txt
    			done
    Door:
    Code:
    		IFS=','
    			read inp
    			for server in $inp;do
    				printf "$TEMPLATE" "$server" >> tijdelijk.txt
    			done


  16.  
    #15
    geregistreerd gebruiker
    216 Berichten
    Ingeschreven
    26/03/08

    Locatie
    Rotterdam

    1 Berichten zijn liked

    ccchosting is offline.

    Registrar SIDN: JA
    ISPConnect: Lid
    KvK nummer: 53693574
    Ondernemingsnummer: nvt

    So das cool!
    allowel ik geen idee heb wat $server er nu weer tussen doet, maar werkt wel.
    Moest even na de pssh command wel de rm functie aanassen met de -f optie, anders werkte het niet, kreeg vage error.

    waar haal je deze nuttige info zo snel vandaan?
    zit te lezen op bash tutorial sites maar was al een ochtendje verder, maar bleef hangen op bovenstaand probleem.


Pagina 1 van de 2 1 2 LaatsteLaatste

Forum Rechten

  • Je mag geen nieuwe onderwerpen plaatsen
  • Je mag geen reacties plaatsen
  • Je mag geen bijlagen toevoegen
  • Je mag jouw berichten niet wijzigen
  •  



webhostingtalk.nl
Webhostingtalk.nl © copyright 2001-2013 Alle Rechten Gereserveerd.

Content Relevant URLs by vBSEO 3.6.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75