Configurar servidor proxy no Apt-get usando SS e Kdialog

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

[ Hits: 7.543 ]

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

Relógio Simples no Shell

Monitorar Funcionamento do Apache

Desligar o servidor quando todas as estações estiverem desligadas

Importar varius Emolticons de uma vez para amsn

Administração de Servidor FTP + MySQL


  

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