Dòng lệnh Linux để tắt proxy


22

Bạn có thể chỉ cho tôi dòng lệnh tắt proxy khi tôi đang sử dụng thiết bị đầu cuối dòng lệnh trong Ubuntu không?


bạn cần vô hiệu hóa nó ở đâu? Cài đặt proxy phụ thuộc vào ứng dụng, theo như tôi biết.
Diskilla

Câu trả lời:


27

Như câu trả lời khác nói rằng có một số chương trình không nhìn vào hệ thống, bạn có thể phải thiết lập chúng riêng lẻ. Ví dụ, wget có một số tùy chọn proxy, có thể được sử dụng để bỏ qua hoặc điều chỉnh cấu hình proxy môi trường trong khi thực thi. Dưới đây là một số lĩnh vực mà các proxy hệ thống có thể được thiết lập.

  • Hệ thống của tôi trông như thế nào, lưu ý rằng bạn sẽ phải thay đổi cấu hình hệ thống được chỉ định cho Môi trường mạng.

Một số hệ thống Linux sử dụng / etc / môi trường

$ 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/"  

Không có đơn thống nhất thiết lập sử dụng khác 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/  

Tôi sẽ kiểm tra ~ / .bashrc để cài đặt tự động được áp dụng khi khởi động hệ thống.

$ 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

Giả sử bạn đang nói về phần mềm dòng lệnh thông thường và proxy HTTP:

Hầu hết các công cụ dòng lệnh chọn điều này từ biến môi trường HTTP_PROXY, vì vậy trước khi chạy lệnh:

unset HTTP_PROXY

Có thể có một số biến thể giữa phần mềm / nền tảng và bạn cũng có thể cần phải unset http_proxycó.

Lưu ý rằng nhiều chương trình lưu trữ thông tin này trong các tệp cấu hình của riêng họ và có khả năng bỏ qua môi trường, vì vậy bạn sẽ phải giải quyết chúng theo từng trường hợp cụ thể.


Có vẻ như cần phải khởi động lại ...?
Yan King Yin

5

Bạn có thể đặt hoặc hủy đặt tất cả các biến cùng một lúc trong 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

Bạn cũng có thể thêm một lối tắt cho bạn ~/.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
}

Đừng quên tải lại .bashrc:

$ . ~/.bashrc

hoặc là

$ source ~/.bashrc

Thêm chi tiết tại [S] Hacks hell .


Đây là câu trả lời tốt, nhưng tôi e rằng có nhiều vị trí hơn trong hệ thống, khi cần thay đổi cài đặt proxy: askubfox.com/questions/664777/ Lỗi .
matandked

Mỗi phần mềm có thể sử dụng các cài đặt proxy riêng của mình (như npm hoặc apt, để đặt tên cho một số phần mềm). Vì vậy, http_proxy bao gồm hầu hết trong số họ, nhưng bạn cần kiểm tra tài liệu để chắc chắn rằng nó sử dụng cái nào.
Adriano P

3

Nếu bạn đang tìm cách thay đổi proxy cho các chương trình GUI, bạn có thể có một số thành công nếu họ sử dụng cài đặt proxy "hệ thống" từ Gnome. Đây là các cài đặt proxy có thể cài đặt từ Bảng điều khiển.

Bạn có thể xem và sau đó thay đổi cài đặt hiện tại bằng 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/

Để tắt proxy - đặt use_http_proxy thành false:

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

Bạn có thể kiểm tra kết quả bằng cách sử dụng -adòng từ trên. Ngoài ra, để đặt proxy mới:

$ 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=

Bạn có thể kiểm tra xem họ đã biến mất bằng cách chạy chưa

echo $http_proxy

Nó sẽ trả về một dòng trống


1

Nếu tất cả những điều được viết ở trên không hoạt động:

  1. Chuyển đến Cài đặt hệ thống.
  2. Chuyển đến Mạng.
  3. Chuyển đến proxy mạng và ngay cả khi lựa chọn được chọn là "không", hãy chuyển đến "thủ công" và xóa tất cả các proxy đã lưu.
  4. Áp dụng trên toàn hệ thống.

Điều này làm việc cho tôi!


1
OP yêu cầu cụ thể cho một tùy chọn dòng lệnh. Họ có thể chưa cài đặt GUI
Burgi

1

Để tắt tất cả các biến proxy trong một dòng cho phiên hiện tại của bạn:

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

0

Bạn có thể xóa tất cả {http_proxy, https_proxy} vv khỏi / etc / môi trường. chỉ cần sudo gedit / etc / môi trường và sau đó xóa thủ công tất cả các proxy đó và lưu lại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.