Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.85 KB | None | 0 0
  1. bash-2.03$ cat /home/olesya/CentOSCert/ENUM/bb.sh
  2. #!/bin/bash
  3. #============ Basic builds checks for component ================
  4. # 1) generates lists of available and unavailable proxies
  5. # 2) generates list for proxies that have problem with ssh connnect
  6. #================================================================
  7.  
  8. #=================================INTRO(USAGE)=====================================
  9. EXPECTED_ARGS=3
  10. E_BADARGS=65
  11.  
  12. if [ $# -ne $EXPECTED_ARGS ]
  13. then
  14. echo " _ ";
  15. echo " .---._ | | ";
  16. echo " ..--(. ' .).--. . .-. __| |_____ ____ ____ _____ ____ ";
  17. echo " . ( ' _) .)' ( .)-. ( ) '-' / _ (____ | _ \ / _ | ___ |/ ___)";
  18. echo " ( , ). '(' . _) ( (_| / ___ | | | ( (_| | ____| | ";
  19. echo " (') _________ '-' \____\_____|_| |_|\___ |_____)_| ";
  20. echo " __ [_________] (_____| ";
  21. echo " \__/ | _ \ || ________ ";
  22. echo " _][__|( )/__|| ,;,;,;, ______ [________] ";
  23. echo " / | ,;;;;;;;;;, __________ _(______)_ _| |_ ";
  24. echo " / _________| | | | | \ | | | ____| ";
  25. echo " (| .--. .--.| | | | | ) / | | |____ | ";
  26. echo " /|/ .. \~~~/ .. \_|_.-._|_.-._|_|_.-:_\.-._\_|_.-.__.-._|_|_.-.__.-._| ";
  27. echo " =/_|\ '' /~~~\ '' /=+( o ) ( o )+==( o )( o )=+=( o )( o )+==( o )( o )=+= ";
  28. echo " ='=='='--'==+='--'===+'-'==='-'==+=='-'+='-'===+='-'=='-'==+=='-'=+'-=-''+ ";
  29. echo "============================================================================";
  30.  
  31. echo ;
  32. echo "Usage: $0 proxy_type instance last_number";
  33. echo ;
  34. echo "proxy_type - use enumerate -t to get your proxy type";
  35. echo "instance - prod1 or prod2";
  36. echo "last_number - 2-1107 cause present 1 01 001 etc";
  37. echo "------------------------------------------------------"
  38. echo ;
  39. echo "Example: $0 kp prod1 900 - will check kp proxies on prod1 till 792 (900-108=792)"
  40. echo ;
  41.  
  42. exit $E_BADARGS
  43. fi
  44.  
  45.  
  46. COMP=$1
  47. INST=$2
  48. LAST_NUM=$3
  49. POINT=.
  50. PREFFIX=.txt
  51. STATUS=0
  52.  
  53. TEMP_FILE=temp.txt
  54. TEMP2_FILE=temp2.txt
  55. RESULT_FILE=temp3.txt
  56.  
  57. AV_HOSTS_FILE=results/$COMP$POINT$INST$PREFFIX
  58. SSH_PROBLEM_FILE=results/ssh_pwd_$COMP$POINT$INST$PREFFIX
  59. TIMEOUT_PROBLEM_FILE=results/timeout_$COMP$POINT$INST$PREFFIX
  60. BLACK_LIST_FILE=main/bl_$COMP$POINT$INST$PREFFIX
  61. NUM_FILE=main/numbers.txt
  62.  
  63.  
  64. # Cutting num file according third argument
  65. head -n $LAST_NUM $NUM_FILE > $RESULT_FILE
  66.  
  67. echo "Program START!"
  68.  
  69. echo "BLACK_LIST was proceeded ..."
  70. echo ;
  71.  
  72. # Make result file according black list or create fake black list
  73. if [ -f $BLACK_LIST_FILE ]
  74. then
  75. for i in `cat $BLACK_LIST_FILE`
  76. do
  77. cat $RESULT_FILE | grep -v "\<$i\>" > $TEMP_FILE
  78. cp $TEMP_FILE $RESULT_FILE
  79. done
  80.  
  81. else
  82. echo "This_text_should_present" > $BLACK_LIST_FILE
  83. fi
  84.  
  85. echo>$TEMP_FILE
  86. echo>$AV_HOSTS_FILE
  87. echo>$SSH_PROBLEM_FILE
  88. echo>$TIMEOUT_PROBLEM_FILE
  89.  
  90.  
  91. # Check all hosts per component and instance available them or no
  92. for i in `cat $RESULT_FILE`
  93. do
  94.  
  95. # SSH check for password
  96. ssh_phys safe@$COMP$i$POINT$INST -o PreferredAuthentications=publickey -o PasswordAuthentication=no -o ConnectTimeout=5 echo -- || STATUS=1
  97.  
  98.  
  99.  
  100. if [ $STATUS -eq 0 ]; then
  101. echo "$COMP$i$POINT$INST">>$AV_HOSTS_FILE
  102. fi
  103.  
  104. if [ $STATUS -eq 1 ]; then
  105.  
  106. GV=`ssh_phys safe@$COMP$i$POINT$INST -o PreferredAuthentications=publickey -o PasswordAuthentication=no -o ConnectTimeout=1 2>&1 | grep Non-existent | wc -l`
  107. # If host not exist then just increment i
  108. if [ $GV -ne 1 ]; then
  109.  
  110. PV=`ssh_phys safe@$COMP$i$POINT$INST -o PreferredAuthentications=publickey -o PasswordAuthentication=no -o ConnectTimeout=1 2>&1 | grep denied | wc -l`
  111. TV=`ssh_phys safe@$COMP$i$POINT$INST -o PreferredAuthentications=publickey -o PasswordAuthentication=no -o ConnectTimeout=7 2>&1 | grep timed | wc -l`
  112.  
  113. # Permission error sorting
  114. if [ $PV -eq 1 ]; then
  115. echo "$COMP$i$POINT$INST">>$SSH_PROBLEM_FILE
  116. fi
  117. # Timeout error sorting
  118. if [ $TV -eq 1 ]; then
  119. echo "$COMP$i$POINT$INST">>$TIMEOUT_PROBLEM_FILE
  120. fi
  121.  
  122. fi
  123. fi
  124. STATUS=0;
  125. done
  126.  
  127. # Empty strings deletition and temporary files removing
  128. echo "Cleaning temporary data";
  129. echo ;
  130. cat $AV_HOSTS_FILE | sed '/^$/d' > $RESULT_FILE
  131. cat $SSH_PROBLEM_FILE | sed '/^$/d' > $TEMP_FILE
  132. cat $TIMEOUT_PROBLEM_FILE | sed '/^$/d' > $TEMP2_FILE
  133. mv $TEMP_FILE $SSH_PROBLEM_FILE
  134. mv $RESULT_FILE $AV_HOSTS_FILE
  135. mv $TEMP2_FILE $TIMEOUT_PROBLEM_FILE
  136.  
  137. echo "Such log files were created:";
  138. echo "$AV_HOSTS_FILE";
  139. echo "$SSH_PROBLEM_FILE";
  140. echo "$TIMEOUT_PROBLEM_FILE";
  141. echo ;
  142. echo "End of programm!";
  143. echo "--------------------------------------";
  144.  
  145. exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement