linux命令行模式下实现代理上网(转)

Linux命令行模式下实现代理上网(转)

在进行网络访问时,有时需要使用代理来突破网络限制。但是,如果是在Linux命令行下工作,就需要了解如何设置代理来进行网络访问。本文将介绍Linux命令行模式下如何使用代理,并给出具体的操作步骤。

安装并配置代理

首先,需要安装一个代理工具。我们以Shadowsocks为例,这是一个使用密码和端口的快速代理工具。在Ubuntu上安装ShadowSocks的命令是:

sudo apt-get install shadowsocks

接下来,需要配置代理,这可以通过编辑一个称为"shadowsocks.json"的文件来完成,该文件包含以下内容:

{
  "server":"your_server_address",
  "server_port":your_port_number,
  "local_address":"127.0.0.1",
  "local_port":1080,
  "password":"your_password",
  "timeout":300,
  "method":"aes-256-cfb"
}

请将"your_server_address"和"your_port_number"替换为你自己的服务器地址和端口。 "password"是你设定的密码,"aes-256-cfb"是加密方式,可以根据自己的需要设置。

设置系统代理

完成代理配置后,我们需要设置系统代理以便整个系统使用该代理。有两种方法可以实现此目的。

方法一:使用环境变量

首先,需要设置代理环境变量。

export http_proxy="http://127.0.0.1:1080/"
export https_proxy="http://127.0.0.1:1080/"

这将设置HTTP和HTTPS代理,我们将其定向到本地端口号"1080"。完成后,可以测试此设置是否正常工作。

curl https://www.google.com

如果成功访问了Google,则表示代理已经成功工作。

为了让系统永久使用代理,默认情况下,这些变量将在当前会话结束后过期。 为了使变量永久生效,请将变量添加到“~ / .bashrc”或“~ / .bash_profile”中,具体取决于你的shell设置。

方法二:编辑apt.conf文件

编辑"Apt.conf"文件中的内容,将代理设置为127.0.0.1:1080。

sudo nano /etc/apt/apt.conf

在文件中添加以下内容。

Acquire::http::Proxy "http://127.0.0.1:1080/";
Acquire::https::Proxy "http://127.0.0.1:1080/";

测试代理是否正常工作

完成代理设置后,需要进行测试以确保代理正在正常工作。下面介绍两种测试方法。

方法一:使用curl测试

使用"Curl"测试代理是否能够成功访问互联网。

curl -I www.google.com

如果在信息中看到"200 OK",则表示代理运行正常。

方法二:使用Proxychains测试

"proxychains"是另一个常用的代理工具。我们可以使用该工具来测试代理是否正常工作。

安装proxyschains:

sudo apt install proxychains

修改配置文件。

sudo nano /etc/proxychains.conf

将最后一行改为:

socks5 127.0.0.1 1080

执行命令:

proxychains curl www.google.com

如果正常,Google的网页HTML应该会被输出。

总结

在Linux命令行模式下,通过安装和配置代理工具,以及设置系统代理,可以成功的进行代理上网。本文介绍了两种设置代理的方法,并给出了具体的操作步骤,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux命令行模式下实现代理上网(转) - Python技术站

(0)
上一篇 2023年3月28日
下一篇 2023年3月28日

相关文章

  • 如何让vue长列表快速加载

    下面是关于如何让 Vue 长列表快速加载的完整攻略: 1. 为什么要快速加载长列表? Vue 作为一种前端框架,使用其开发的应用在引入大量数据时可能会出现渲染速度慢、页面卡顿等问题,导致用户体验降低。因此需要在长列表的数据渲染过程中尽可能提高渲染效率和响应速度。 2. 进一步细分问题 如何在 Vue 中快速加载长列表的数据渲染并达到较好的用户体验,具体的解决…

    other 2023年6月25日
    00
  • python中类的一些方法分析

    类(class)的创建及初始化方法(__init__) 一个类是对象的一个模板或蓝图,它定义了对象的属性和方法。类(class)是面向对象编程的核心,Python中使用class定义一个类。 class Person: def __init__(self, name, age): self.name = name self.age = age def int…

    other 2023年6月26日
    00
  • Android开发快速实现底部导航栏示例

    Android开发快速实现底部导航栏示例攻略 底部导航栏是Android应用中常见的一种导航方式,它可以让用户快速切换不同的页面或功能。本攻略将详细介绍如何快速实现一个底部导航栏示例。 步骤一:创建项目和布局文件 首先,我们需要创建一个新的Android项目,并在布局文件中定义底部导航栏的外观和位置。 在Android Studio中创建一个新的项目。 打开…

    other 2023年9月6日
    00
  • 详解CSS布局中浮动问题的四种解决方案

    首先我们先来介绍一下CSS布局中浮动问题的背景。 在CSS布局中,为了让元素自由地流动,我们会经常使用浮动来实现布局。但是,浮动也带来了很多问题,比如容易造成父元素高度塌陷、子元素溢出等。 接下来,我们就来详解CSS布局中浮动问题的四种解决方案。 方案一:使用clearfix clearfix 是一个经典的解决浮动问题的方案,原理是清除元素的浮动影响,同时可…

    other 2023年6月26日
    00
  • include包含头文件的语句中,双引号和尖括号的区别(详解)

    在C/C++中,我们使用#include语句来包含头文件。头文件是一些预先编写好的代码文件,可以包含函数声明、宏定义等内容。在使用头文件之前,需要使用#include语句将其包含进来。 在#include语句中,头文件的名称需要放在双引号或尖括号中,这两种方式有不同的作用。 双引号方式 语法:#include “filename” 当使用双引号包含头文件时,…

    other 2023年6月26日
    00
  • 解析JavaSE的继承和多态

    解析JavaSE的继承和多态 继承 继承是面向对象程序设计(OOP)的一项重要特性,通过继承我们可以创建基于已有类的新类,这个新类可以继承已有类的属性和行为,也可以添加自己的属性和行为,从而实现代码的复用。 在Java中,一个类可以通过extends关键字来继承一个已有的类。例如: public class Animal { public void soun…

    other 2023年6月26日
    00
  • Java递归方法求5!的实现代码

    首先,Java递归方法可以通过函数内部不断地调用自身来实现重复的任务。对于求5!(即5的阶乘)的问题,可以使用递归方法来解决。 阶乘的定义是:n! = n * (n-1) * (n-2) * … * 2 * 1,其中0! = 1。 下面是求5!的完整Markdown格式的Java递归方法实现代码: public static int factorial(…

    other 2023年6月27日
    00
  • 微信小程序列表渲染功能之列表下拉刷新及上拉加载的实现方法分析

    微信小程序列表渲染功能之列表下拉刷新及上拉加载的实现方法分析 一、前言 在微信小程序开发中,列表渲染功能是必不可少的功能之一。而列表下拉刷新及上拉加载是列表渲染的常见需求,本文将从实现方法分析角度对列表下拉刷新及上拉加载这一功能进行详细讲解。 二、实现思路 1. 下拉刷新 下拉刷新的实现思路如下: 在需要下拉刷新的页面添加一个scroll-view元素,并设…

    other 2023年6月25日
    00
合作推广
合作推广
分享本页
返回顶部