Baris perintah Linux untuk mematikan proxy


22

Bisakah Anda menunjukkan kepada saya baris perintah untuk mematikan proxy ketika saya menggunakan terminal baris perintah di Ubuntu?


di mana Anda perlu menonaktifkannya? Pengaturan proxy tergantung pada aplikasi, sejauh yang saya tahu.
Diskilla

Jawaban:


27

Seperti jawaban lain mengatakan ada beberapa program yang tidak melihat sistem sama sekali Anda mungkin harus mengaturnya secara individual. Misalnya wget memiliki sejumlah opsi proxy, yang dapat digunakan untuk mengabaikan atau mengadaptasi konfigurasi proxy lingkungan selama eksekusi. Berikut adalah sejumlah area di mana proksi sistem dapat diatur.

  • Bagaimana sistem saya terlihat, perhatikan bahwa Anda harus mengubah konfigurasi sistem yang ditentukan untuk Lingkungan jaringan Anda.

Beberapa sistem Linux menggunakan / etc / environment

$ cat /etc/environment 
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
http_proxy="http://192.168.1.250:8080/"
ftp_proxy="ftp://192.168.1.250:8080/"
https_proxy="https://192.168.1.250:8080/"  

Tidak ada satu set tunggal yang seragam menggunakan env

$ env | grep -i proxy
NO_PROXY=localhost,127.0.0.0/8,127.0.1.1
http_proxy=http://192.168.1.250:8080/
FTP_PROXY=ftp://192.168.1.250:8080/
ftp_proxy=ftp://192.168.1.250:8080/
all_proxy=socks://192.168.1.250:8080/
ALL_PROXY=socks://192.168.1.250:8080/
HTTPS_PROXY=https://192.168.1.250:8080/
https_proxy=https://192.168.1.250:8080/
no_proxy=localhost,127.0.0.0/8,127.0.1.1
HTTP_PROXY=http://192.168.1.250:8080/  

Saya akan memeriksa ~ / .bashrc agar pengaturan diterapkan secara otomatis saat sistem dinyalakan.

$ man env
$ man set
$ # The file section near the end of the bash manual.
$ man bash 

FILES
       /bin/bash
              The bash executable
       /etc/profile
              The systemwide initialization file, executed for login shells
       /etc/bash.bashrc
              The systemwide per-interactive-shell startup file
       /etc/bash.bash.logout
              The systemwide login shell cleanup file, executed when  a  login
              shell exits
       ~/.bash_profile
              The personal initialization file, executed for login shells
       ~/.bashrc
              The individual per-interactive-shell startup file
       ~/.bash_logout
              The  individual  login shell cleanup file, executed when a login
              shell exits
       ~/.inputrc
              Individual readline initialization file

16

Dengan asumsi Anda berbicara tentang perangkat lunak baris perintah dan proksi HTTP:

Sebagian besar alat baris perintah mengambil ini dari variabel lingkungan HTTP_PROXY, jadi sebelum menjalankan perintah:

unset HTTP_PROXY

Mungkin ada beberapa variasi antara perangkat lunak / platform, dan Anda mungkin perlu unset http_proxyjuga.

Perhatikan bahwa banyak program menyimpan informasi ini dalam file konfigurasi mereka sendiri, dan cenderung mengabaikan lingkungan, jadi Anda harus mengatasinya berdasarkan kasus per kasus.


Tampaknya perlu reboot ...?
Yan King Yin

5

Anda dapat mengatur atau menghapus semua variabel sekaligus di bash:

$ export {http,https,ftp}_proxy="http://proxy-server:port"
$ unset {http,https,ftp}_proxy

$ export {HTTP,HTTPS,FTP}_PROXY="http://proxy-server:port"
$ unset {HTTP,HTTPS,FTP}_PROXY

Anda juga dapat menambahkan pintasan kepada Anda ~/.bashrc:

# Set Proxy
function setproxy() {
    export {http,https,ftp}_proxy="http://proxy-server:port"
    export {HTTP,HTTPS,FTP}_PROXY="http://proxy-server:port"
}

# Unset Proxy
function unsetproxy() {
    unset {http,https,ftp}_proxy
    unset {HTTP,HTTPS,FTP}_PROXY
}

Jangan lupa memuat ulang .bashrc:

$ . ~/.bashrc

atau

$ source ~/.bashrc

Lebih detail di [S] hell Hacks .


Ini jawaban yang bagus, tetapi saya khawatir ada lebih banyak tempat dalam sistem, ketika pengaturan proxy perlu diubah: askubuntu.com/questions/664777/… .
matandked

Setiap perangkat lunak dapat menggunakan pengaturan proxy sendiri (seperti npm atau apt, untuk beberapa nama). Jadi http_proxy mencakup sebagian besar dari mereka, tetapi Anda perlu memeriksa dokumentasi untuk memastikan yang digunakan.
Adriano P

3

Jika Anda ingin mengubah proksi untuk program GUI Anda mungkin berhasil jika mereka menggunakan pengaturan proxy "sistem" dari Gnome. Ini adalah pengaturan proxy yang dapat diatur dari Panel Kontrol.

Anda dapat melihat dan kemudian mengubah pengaturan saat ini dengan gconftool:

$ gconftool-2 -a /system/http_proxy
  ignore_hosts = [localhost,127.0.0.0/8,*.local]
  authentication_user =
  authentication_password =
  use_authentication = false
  use_http_proxy = true
  port = 8080
  host = http://myproxy.mydomain.org/

Untuk mematikan proxy - set use_http_proxy ke false:

$ gconftool-2 -t bool -s /system/http_proxy/use_http_proxy false

Anda dapat memeriksa hasilnya menggunakan -agaris dari atas. Atau untuk menetapkan proxy baru:

$ gconftool-2 -t string -s /system/http_proxy/host "http://newproxy.mydomain.org/"
$ gconftool-2 -t int -s /system/http_proxy/port 8088

3
export http_proxy=

Anda dapat memeriksa untuk melihat apakah mereka hilang dengan berlari

echo $http_proxy

Seharusnya mengembalikan baris kosong


1

Jika semua hal yang ditulis di atas tidak berfungsi:

  1. Buka Pengaturan Sistem.
  2. Pergi ke Jaringan.
  3. Pergi ke proxy jaringan dan bahkan jika pilihan yang dipilih adalah "tidak ada", pergi ke "manual" dan hapus semua proxy yang disimpan.
  4. Berlaku di seluruh sistem.

Ini berhasil untuk saya!


1
OP bertanya secara khusus untuk opsi baris perintah. Mereka mungkin tidak menginstal GUI
Burgi

1

Untuk menonaktifkan semua variabel proxy dalam satu baris untuk sesi Anda saat ini:

unset `env | grep proxy | cut -d= -f1`

0

Anda dapat menghapus semua {http_proxy, https_proxy} etc dll dari / etc / environment. cukup sudo gedit / etc / environment lalu hapus semua proksi itu secara manual dan simpan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.