Configurar servidor proxy no Apt-get usando SS e Kdialog

Publicado por Guilherme Oliveira (última atualização em 20/02/2010)

[ Hits: 7.532 ]

Download aptgetproxy.sh




Aqui em casa estou usando algumas soluções para compartilhar a internet e volta e meia uso proxy e outros tipos de conexão, então ter que alterar manualmente as configurações de proxy do Apt-get me baseando nas dicas daqui mesmo do Viva o Linux ( http://www.vivaolinux.com.br/dica/Configurando-aptget-com-proxy ), não é fácil para quem não domina o Linux. Fiz um script realmente fácil para fazer essa tarefa e fácil de ser entendido também.

Apesar de ser um script simples, seu uso é fácil pois com o Kdialog é possível fazer pequenos programas com uma interface gráfica bem interessante. Para executar o script, basta baixar o script e executar clicando duas vezes o arquivo ou então digitando o comando "sh aptgetproxy.sh" que ele vai executar.

Para quem quer usar, você precisa usar o Kdialog, que é um programa de caixas de diálogo exclusivo do KDE e que vem por padrão nas distribuições que vêm com o KDE por exemplo, Kubuntu, OpenSUSE, Mandriva, Mint Linux e outros... Estou usando BigLinux e Mandriva 2010 nesse momento, mas futuramente irei fazer um que funciona tanto no Gnome, KDE e outros ambientes utilizando os programas Zenity, Xdialog, dialog e outros.

  



Esconder código-fonte

#Usando Kdialog
opcao1=$( kdialog --combobox "Selecione uma opcao:" "Desabilitar proxy no Apt-get" "Habilitar proxy no Apt-get" )

if [ "$opcao1" = "Desabilitar proxy no Apt-get" ]; then
    sudo echo > /etc/environment #Apagando config no environment
    sudo echo > /etc/apt/apt.conf #Apagando config no apt.conf
    sed '/export http_proxy ftp_proxy/d' < /etc/profile > /tmp/output.txt
fi

if [ "$opcao1" = "Habilitar proxy no Apt-get" ]; then
    
    proxy=$( kdialog --title "Proxy" --inputbox "Digite o endereco do servidor proxy com porta \n Exemplo: 192.168.1.3:6588" )

    autproxy=$( kdialog --title "Autenticacao no proxy?" --yesno "Para acessar o proxy sera necessario fazer autenticacao com login e senha?" ; echo $? )
    
#Verificando resposta da variavel $autproxy - 0 para sim, 1 para nao!

    if [ "$autproxy" = "0" ]; then
   #Caso SEJA necessario ter senha e login para o proxy funcionar
         login=$( kdialog --title "Login" --inputbox "Digite o login para autenticacao no servidor proxy")
         senha=$( kdialog --title "Login" --inputbox "Digite a senha para autenticacao no servidor proxy")
  
 
      sudo echo 'http_proxy="http://'$login':'$senha'@'$proxy'"' > /etc/environment
      sudo echo 'ftp_proxy="http://'$login':'$senha'@'$proxy'"' >> /etc/environment
      sudo echo 'Acquire {' >> /etc/environment
      sudo echo 'HTTP::Proxy '$login':'$senha'@'$proxy';'>> /etc/environment
      sudo echo 'FTP::Proxy '$login':'$senha'@'$proxy';' >> /etc/environment
      sudo echo "};">> /etc/environment
      sudo echo 'alias wget="wget -Y on"' >> /etc/environment
      
      #Escrevendo no profiles
      sudo echo 'export http_proxy ftp_proxy' >> /etc/profile
      
      #Escrevendo no apt.conf
 
      sudo echo "Acquire{" > /etc/apt/apt.conf
      sudo echo 'HTTP::Proxy "http://'$proxy'";' >> /etc/apt/apt.conf
      sudo echo 'FTP::Proxy "http://'$proxy'";' >> /etc/apt/apt.conf
      sudo echo '}'  >> /etc/apt/apt.conf
    fi

    if [ "$autproxy" = "1" ]; then
   #Caso NAO SEJA necessario TER senha e login para o proxy funcionar
         #Caso SEJA necessario ter senha e login para o proxy funcionar

      sudo echo 'http_proxy="http://'$proxy'"' > /etc/environment
      sudo echo 'ftp_proxy="http://'$proxy'"' >> /etc/environment
      sudo echo 'Acquire {' >> /etc/environment
      sudo echo 'HTTP::Proxy '$proxy';'>> /etc/environment
      sudo echo 'FTP::Proxy '$proxy';' >> /etc/environment
      sudo echo "};">> /etc/environment
      sudo echo 'alias wget="wget -Y on"' >> /etc/environment
      
      #Escrevendo no profiles
      sudo echo 'export http_proxy ftp_proxy' >> /etc/profile
      
      #Escrevendo no apt.conf
 
      sudo echo "Acquire{" > /etc/apt/apt.conf
      sudo echo 'HTTP::Proxy "http://'$proxy'";' >> /etc/apt/apt.conf
      sudo echo 'FTP::Proxy "http://'$proxy'";' >> /etc/apt/apt.conf
      sudo echo '}'  >> /etc/apt/apt.conf
      fi
   fi



Scripts recomendados

Shell para extrair informações de impressoras Brother

Script para desligar o computador de acordo como login

Script para o Qemu usando Dialog

"Integrando" nslookup ao ping

Wake up, neo... 0.2


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts