问题: 在做一个国外的开源项目,需要用到很多 ubuntu 上特定版本的应用,由于国内墙的问题,导致Ubuntu 14.04在需要添加一些国外的库的时候(add-apt-repository ppa:user/ppa-name),然后update会导致Hash Sum mismatch错误(16.06已经修复), 各种手段都用了,只有 fan 墙才能解决.下面介绍下Ubuntu14.04通过PPTP协议使用VPN


1. 安装 pptp-linux 客户端

sudo apt-get install pptp-linux

2. 查看电脑的网卡与网关信息

记录信息,在关闭 VPN 时使用

ifconfig 查看自己的网卡名字 $ETH0,

route -n 查看自己默认网关信息 $GATEWAY

3. 建立VPN 连接

sudo pptpsetup --create  本地名 \
--server 服务器域名(或 IP) --username VPN账户用户名 \
--password VPN账户密码 --encrypt --start

这时 ifconfig 会发现多了一个叫做 ppp0 的网卡,虽然VPN已经连接成功,但是路由没有通过VPN上网,因为当前路由的默认网关是还是上述$GATEWAY , 我们需要流量从网卡 ppp0 发出去我们需要修改默认网关.

sudo ip route del default
sudo ip route add default dev ppp0

4. 建立 vpn 的最后一步,也是关键一步


DNS改为google域名解析服务器的 8.8.8.8 或者 8.8.4.4

成功连接到远程VPN服务器。

通过刚才的创建脚步:

在/etc/ppp/peers目录下面,会生成一个叫$本地名的文件。

在/etc/ppp目录下面,用户名和密码会写在chap-secrets文件中。

5. 关闭VPN

由于之前我们把默认路由删除了, 关闭 VPN 时是没法上网的,需要做以下操作

#!/bin/bash
set -e
sudo ifconfig $ETH0 down
sudo ifconfig $ETH0 up
sudo route add default gw $GATEWAY

现在就可以正常上网了:)

贴上脚本

开启VPN

#!/bin/bash
# 使用前安装pptp-linux工具
set -e
sudo pptpsetup --create nowgood --server us01.blockcn.net \
--username *** --password *** \
--encrypt --start
sudo ip route del default
sudo ip route add default dev ppp0

关闭 VPN

#!/bin/bash
set -e
sudo ifconfig $ETH0 down
sudo ifconfig $ETH0 up
sudo route add default gw $GATEWAY

ubuntu server命令行搭建虚拟专用网的更多相关文章

  1. Ubuntu Server 命令行下的默认语言改为英语en_US.UTF-8

    源文链接:http://tonychiu.blog.51cto.com/656605/393131 如果Ubuntu Server在安装过程中,选择的是中文(很多新手都会在安装时选择中文,便于上手), ...

  2. Ubuntu Server 命令行下显示中文乱码(菱形)解决办法

    如果Ubuntu Server在安装过程中,选择的是中文(很多新手都会在安装时选择中文,便于上手),这样在完成安装后,系统默认的语言将会是中文zh_CN.UTF- 8.但问题是我们安装的是服务器,只需 ...

  3. [转]Ubuntu Server命令行更换软件源

    sucd /etc/aptwget http://mirrors.163.com/.help/sources.list.lucidmv sources.list sources.list.backup ...

  4. 【Problem】xampp in ubuntu下命令行启动mysql报错: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/opt/lampp/var/mysql/mysql.sock' (2)

    xampp in ubuntu下命令行启动mysql报错: reddevil@reddevil-Lenovo:/opt/lampp$ ./bin/mysql -u root -p Enter pass ...

  5. MSSQL-Scripter,一个新的生成T-SQL脚本的SQL Server命令行工具

    这里向大家介绍一个新的生成T-SQL脚本的SQL Server命令行工具:mssql-scripter.它支持在SQL Server.Azure SQL DB以及Azure SQL DW中为数据库生成 ...

  6. Ubuntu使用命令行打印文件

    Ubuntu使用命令行打印文件 正文 环境: Ubuntu 16.04.3 LTS HP Deskjet InkAdvantage 4648 准备步骤 安装Common UNIX Printing S ...

  7. Ubuntu终端命令行不显示颜色

    在网上找到的一个有效方案是在.bash_profile 中增加颜色定义 export LS_COLORS='di=01;35:ln=01;36:pi=40;33:so=01;35:do=01;35:b ...

  8. Vue - 使用命令行搭建单页面应用

    使用命令行搭建单页面应用 我们来看一下最后完成的效果: 大纲 1. 下载 node, git, npm 2. 使用命令行安装一个项目 一. 下载工具 node , git  的下载大家可以去官网自行下 ...

  9. ubuntu 下命令行播放器mplayer 使用详解

    ubuntu 下命令行播放器mplayer 使用详解 2011-01-02 21:00:42|  分类: Linux/Unix |  标签: |字号大中小 订阅 使用 MPlayer 播放媒体文件最简 ...

随机推荐

  1. pt-archiver数据导入迁移工具

    pt-archiver数据导入迁移工具 一直想明白,如何将一个大表的数据,每多少行数据已提交,分批次的转储到另外的地方,幸好有现成的工具,赶紧把实验成功的操作记录下来. 原理就不解释了,直接上最常用的 ...

  2. saltstack returners

    大意就是将saltstack 执行的结果,不在终端显示,写到文件或者数据库,功能类似于ansible的callback 参考 https://github.com/saltstack/salt/tre ...

  3. Tensorflow搞一个聊天机器人

    catalogue . 前言 . 训练语料库 . 数据预处理 . 词汇转向量 . 训练 . 聊天机器人 - 验证效果 0. 前言 不是搞机器学习算法专业的,3个月前开始补了一些神经网络,卷积,神经网络 ...

  4. 6.适配器模式(Adapter Pattern)

    适配(转换)的概念无处不在......适配,即在不改变原有实现的基础上,将原先不兼容的接口转换为兼容的接口.例如:二转换为三箱插头,将高电压转换为低电压等.    动机(Motivate):    在 ...

  5. git的那些事

    前言:记得在想学习git的时候,一直停留在思想的层面,总没有弄清楚它的运行机制,经常与github混淆,还好找到了一个好的教程,带我领略了git的风采 (一)git的优点 git的优点:版本控制在本地 ...

  6. 【整理】Linux 下 自己使用的 debug宏 printf

    #ifdef __DEBUG_PRINTF__ /* * * Some Debug printf kit for devlopment * * Date : 2019.03.04 * * Editor ...

  7. Understanding Favicon

    Favicon 简介 Favicon : 是favorites icon 的缩写,被称为website icon . page icon. urlicon. 最初定义一个favicon的方法是将一个名 ...

  8. springMVC下载中文文件名乱码【原】

    重点就在于添加  "attachment;filename*=utf-8'zh_cn'" + fileName //遇到的现象是,下载含有中文文件名的文件时,能获取到文件,但是使用 ...

  9. 51Nod - 1228 序列求和 (自然数幂和+伯努利数)

    https://vjudge.net/problem/51Nod-1228 Description T(n) = n^k,S(n) = T(1) + T(2) + ...... T(n).给出n和k, ...

  10. windows配置Java环境变量

    打开电脑的高级系统设置-高级-环境变量 新建系统变量,如果已存在则添加到变量尾部,切勿覆盖 变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1..0_102 变量 ...