Eu instalei uma ferramenta HTTPIE no meu servidor Linux para testar nosso proxy em busca de respostas de sites como o google.com e estou tentando escrever um script para testar se o tráfego está passando pelo proxy ou não Por exemplo: Eu quero o script para executar o comando abaixo e se eu conseguir os resultados, incluindo o 200 OK, em seguida, o tráfego foi bem e se eu não obtiver resposta, então eu quero o script para enviar um email para me informar o comando não retornou resultados.
Abaixo está o exemplo e depois a primeira parte do script que eu escrevi
# http --proxy=http:http://my_proxy:3128 head www.google.com
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Connection: keep-alive
Content-Encoding: gzip
Content-Length: 4622
Content-Type: text/html; charset=ISO-8859-1
Date: Sat, 28 Apr 2018 01:40:13 GMT
Expires: -1
P3P: CP="This is not a P3P policy! See g.co/p3phelp for more info."
Proxy-Connection: keep-alive
Server: gws
Set-Cookie: 1P_JAR=2018-04-28-01; expires=Mon, 28-May-2018 01:40:13 GMT; path=/; domain=.google.com
Set-Cookie: NID=129=eWFNZlP7mCtJ_zVH7sa6kxTOc9ebMpwLMgUSVnfMA1_bJM2UFfZwly9-BqDSPFI2EaY45t7GhTAte-w783Od3JZ5MGcqmjxT86h8yKdAK1t1qlCm9oexkaYRFgRp64MK; expires=Sun, 28-Oct-2018 01:40:13 GMT; path=/; domain=.google.com; HttpOnly
Via: 1.1 isdsecwsandc2.tch.harvard.edu:3128 (Cisco-WSA/10.5.2-042)
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
Então eu só quero escrever um script para executar o comando acima em cada endereço IP do proxy e se eu receber 200 OK de volta, vá para o próximo e, se expirar, envie-me um e-mail para me informar
O script está aqui:
#!/bin/bash
proxy_targets="http://10.5.5.5:3128 http://10.5.5.6:3128 http://10.5.5.7:3128"
failed_hosts=""
for i in $proxy_targets
do
http --proxy=http:$i head www.google.com > /dev/null
Tags linux scripting shell-script rhel