当前位置: 首页 > 编程日记 > 正文

配置Open***使用User/Pass方式验证登录

Open***和PPTP ***相比存在诸多的优势,最明显的是Open***支持NAT穿越,也就是说在nat环境下使用open***只需要一个在路由器上做一个端口映射即可!不需要其他路由的支持,要知道不是所有的路由器都支持配置NAT穿越,只有高级的路由器才提供这种功能!其次open***使用证书加密数据传输,安全性方便也优于PPTP ***,但在配置方面比PPTP ***要复杂许多!而且open***客户端登录只需要双击就可以连接服务器端,从感官上反而觉得安全性低,因而下面介绍下open***使用user/pass方式用户验证登录,使用这种方式验证用户登录在注销用户账号的时候只要删除密码文件中的记录即可,非常的方便!

一:在开始之前请先配置配置好open***服务器和客户端,可参考以下安装文档!
http://hi.baidu.com/naruto6006/item/74dfe5b471298370254b09af

二:修改open***服务主配置文件,添加如下内容;如果加上client-cert-not-required则代表只使用用户名密码方式验证登录,如果不加,则代表需要证书和用户名密码双重验证登录!
# tail -3 /usr/local/open***/etc/server.conf
auth-user-pass-verify /usr/local/open***/etc/checkpsw.sh via-env
client-cert-not-required 
username-as-common-name

三:下载验证用户登录脚本并进行相应的修改,主要改PASSFILE和LOG_FILE两个变量

  1. # cd /usr/local/open***/etc/
  2. # wget http://open***.se/files/other/checkpsw.sh
  3. # chmod +x checkpsw.sh
  4. # cat checkpsw.sh
  5. #!/bin/sh
  6. ###########################################################
  7. # checkpsw.sh (C) 2004 Mathias Sundman <mathias@open***.se>
  8. #
  9. # This script will authenticate Open*** users against
  10. # a plain text file. The passfile should simply contain
  11. # one row per user with the username first followed by
  12. # one or more space(s) or tab(s) and then the password.
  13. PASSFILE="/usr/local/open***/etc/psw-file"
  14. LOG_FILE="/usr/local/open***/var/open***-password.log"
  15. TIME_STAMP=`date "+%Y-%m-%d %T"`
  16. ###########################################################
  17. if [ ! -r "${PASSFILE}" ]; then
  18. echo "${TIME_STAMP}: Could not open password file \"${PASSFILE}\" for reading." >>
  19. ${LOG_FILE}
  20. exit 1
  21. fi
  22. CORRECT_PASSWORD=`awk '!/^;/&&!/^#/&&$1=="'${username}'"{print $2;exit}' ${PASSFILE}`
  23. if [ "${CORRECT_PASSWORD}" = "" ]; then
  24. echo "${TIME_STAMP}: User does not exist: username=\"${username}\", password=
  25. \"${password}\"." >> ${LOG_FILE}
  26. exit 1
  27. fi
  28. if [ "${password}" = "${CORRECT_PASSWORD}" ]; then
  29. echo "${TIME_STAMP}: Successful authentication: username=\"${username}\"." >> ${LOG_FILE}
  30. exit 0
  31. fi
  32. echo "${TIME_STAMP}: Incorrect password: username=\"${username}\", password=
  33. \"${password}\"." >> ${LOG_FILE}
  34. exit 1

四:准备用户名和密码认证文件,用户名和密码用空格隔开,同时确保open***启动用户可读取该文件

  1. # cat psw-file
  2. yangliangwei 123456
  3. # chmod 400 psw-file
  4. # chown nobody.nobody psw-file

五:修改客户端配置文件
注释掉
;cert yangliangwei.crt 
;key  yangliangwei.key

增加询问用户名和密码   
auth-user-pass

六:测试,若输入错误的用户名或密码,则提示重新输入用户名和密码,尝试3次后中断;

# tail -f /usr/local/open***/var/open***-password.log
2012-09-28 09:41:13: Successful authentication: username="yangliangwei"

相关文章:

常惠琢 201771010102《面向对象程序设计(java)》第七周学习总结

实验七 继承附加实验 实验时间 2018-10-11 1、实验目的与要求 &#xff08;1&#xff09;进一步理解4个成员访问权限修饰符的用途&#xff1b; &#xff08;2&#xff09;掌握Object类的常用API用法&#xff1b; &#xff08;3&#xff09;掌握ArrayList类用法与常用API&#…

nginx php站点配置文件,php网站修改默认访问文件的nginx配置

搭建好lnmp后&#xff0c;有时候并不需要直接访问index.php&#xff0c;配置其他的默认访问文件比如index.html这时候需要配置一下nginx才能访问到你想要设置的文件直接上代码&#xff0c;如下是我的配置的一份简单的nginx到php-fpm的站点&#xff0c;该站点默认访问目录/ecmob…

CMake 打包已经存在的动态库生成 target

一. 背景 在 CMakeLists.txt 中&#xff0c;某模块 A 通过 add_subdirectory 引入模块 B &#xff0c;模块 B 通过 add_subdirectory 引入模块 C。模块 C 里面本身就是一个开源的动态库&#xff0c;比如 libtask。目的想要将 C 模块打包成一个 Target &#xff0c;以便在 A 模…

Ruby: Ruby脚本在测试中的使用

如果存在以下的场景&#xff1a;1. 放置在公司的读报机服务器&#xff0c;每天都是开启的&#xff1b;2. 读报机每天下载报纸&#xff0c;一旦成功/失败&#xff0c;就会有相应的记录生成在某个xml文件中&#xff1b;3. 现在有过去一年的读报机下载xml&#xff0c;大约有200多份…

cocos2d-xna for win8源代码轻松移植cocos-xna for wp游戏

无意间看到杨哥弄了一个cocos2d-xna for win8出来可惜没有放出源代码&#xff0c;我试着要了一下结果他没理我&#xff0c;各种画圈圈。 那我只好自己弄一个了&#xff0c;源代码放出大家供交流学习使用&#xff0c;像杨哥说的一样就是一点小bug很容易该成把wp改成win8版的&…

Oct 2018

Tasks motion planning code in Autonomous DrivingUdacity RoboticsNDCoursera RoboticsMotion PlanningEstimationF1/10 racecarProject Overview 1. Mooc Udacity RoboticsND: project 3 Coursera Robotics Motion Planning HomeworkNote --> Post  2. Leetcode ☆☆ …

Springboot+mybatisplus搭建新闻管理系统

模块化实现&#xff0c;一周轻松搭建 前端 后端 项目源码及其教程回复已三连备注邮箱领取

SQL Server存储过程输入参数使用表值

在2008之前如果我们想要将表作为输入参数传递给SQL Server存储过程使比较困难的&#xff0c;可能需要很多的逻辑处理将这些表数据作为字符串或者XML传入。 在2008中提供了表值参数。使用表值参数&#xff0c;可以不必创建临时表或许多参数&#xff0c;即可向 Transact-SQL 语句…

ef core mysql 字符集,EF Core 基础知识

数据库连接字符串在 ASP.NET Core 添加配置片段&#xff1a;{"ConnectionStrings": {"BloggingDatabase": "Server(localdb)\\mssqllocaldb;DatabaseEFGetStarted.ConsoleApp.NewDb;Trusted_ConnectionTrue;"}}然后&#xff0c;配置对应的DbCont…

模板特化,全特化,偏特化,全部特化,部分特化的含义

模板特化&#xff0c;任何针对模板参数进一步进行条件限制设计的特化版本。《泛型思维》 全特化就是全部特化&#xff0c;即针对所有的模板参数进行特化。《c primer》偏特化就是部分特化&#xff0c;即针对部分模板参数进行特化。《c primer》全特化和偏特化的定义不是很严格&…

PHP中单例模式:三私一公是什么?

PHP中单例模式&#xff1a;三私一公是什么&#xff1f; 三私一公 私有化静态属性 私有化构造方法 私有化克隆方法 公有化静态方法 ​​​​ 转载于:https://www.cnblogs.com/phpisfirst/p/9792545.html

php 缓存模块,PHP缓存之模块缓存(APC)_PHP教程

PHP缓存之模块缓存(APC)APC是Alternative PHP Cache的简称&#xff0c;是 PHP 的一个免费公开的优化代码缓存。它用来提供免费&#xff0c;公开并且强健的架构来缓存和优化 PHP 的中间代码。1、PHP配置APC开启APC模块&#xff0c;需要将 extensionphp_apc.dll 前面的注释去掉即…

pta 考试座位

L1-005 考试座位号 (15 分) 每个 PAT 考生在参加考试时都会被分配两个座位号&#xff0c;一个是试机座位&#xff0c;一个是考试座位。正常情况下&#xff0c;考生在入场时先得到试机座位号码&#xff0c;入座进入试机状态后&#xff0c;系统会显示该考生的考试座位号码&#…

JSDoc那些事

几天工作上需要文档化一些Javascript东西&#xff0c;所以在找一些JS文档化工具&#xff0c;以下分析几种工具。 1.JSDoc-toolkit 一开始还想用这个工具&#xff0c;但后来在解析生成文档时候&#xff0c;出现了很严重的错误&#xff0c;还存在其他问题。 问题1&#xff1a;闭包…

WindowType 属性

WindowType 属性 指定一个表单集或表单在显示或用DO FORM来运行时的行为.在设计和运行时可供使用. Object.WindowType[ nType] 返回值 nType对于表单集&#xff0c;WindowType 属性的设置如下&#xff1a; 设置说明 0 无模式。 1 模式。其它表单(非该表单集中的)不能变为活动…

Excel VBA附合导线平差自动计算表

这是6,7年前做的一个excel vba自动计算附合导线平差的表格。 对于做测绘的朋友来说&#xff0c;附合导线平差是最基础的技能&#xff0c;目前来说&#xff0c;能平差的软件和工具也很多&#xff0c;像南方的平差易&#xff0c;科傻平差、清华三维平差等&#xff0c;但这些软件操…

结构体解决念数字问题

L1-007 念数字 (10 分) 输入一个整数&#xff0c;输出每个数字对应的拼音。当整数为负数时&#xff0c;先输出fu字。十个数字对应的拼音如下&#xff1a; 0: ling 1: yi 2: er 3: san 4: si 5: wu 6: liu 7: qi 8: ba 9: jiu输入格式&#xff1a; 输入在一行中给出一个整数&…

Eclipse NDK 配置,无需安装Cygwin

Eclipse NDK 配置&#xff0c;无需安装Cygwin Eclipse NDK 配置&#xff0c;不用安装Cygwin 文章转自http://www.cnblogs.com/chenjiajin/archive/2012/04/12/2444188.html一、关于NDK: NDK全称&#xff1a;Native Development Kit。 1、NDK是一系列工具的集合。 NDK提供了一系…

php裁剪图片白边,php生成缩略图填充白边(等比缩略图方案)

网站上传图片后生成缩略图应该是非常常用的功能了&#xff0c;通常来讲为了网站显示美观&#xff0c;缩略图会是同样尺寸&#xff0c;比如最近笔者做的一个站点&#xff0c;缩略图规格要求都是160120。但是如果上传的图片比例和缩略图不一致&#xff0c;直接缩放的话就会导致图…

PHP 平分数组

1 <?php2 /**3 *一个整数数组&#xff0c;长度为n&#xff0c;将其分为m 份&#xff0c;使各份的和相等&#xff0c;求m 的最大值4 *比如{3&#xff0c;2&#xff0c;4&#xff0c;3&#xff0c;6} 可以分成{3&#xff0c;2&#xff0c;4&#xff0c;3&#xf…

Shoot the Bullet(ZOJ3229)(有源汇上下界最大流)

描述 ensokyo is a world which exists quietly beside ours, separated by a mystical border. It is a utopia where humans and other beings such as fairies, youkai(phantoms), and gods live peacefully together. Shameimaru Aya is a crow tengu with the ability to …

深入理解jQuery插件开发【转】

如果你看到这篇文章&#xff0c;我确信你毫无疑问会认为jQuery是一个使用简便的库。jQuery可能使用起来很简单&#xff0c;但是它仍然有一些奇怪的地方&#xff0c;对它基本功能和概念不熟悉的人可能会难以掌握。但是不用担心&#xff0c;我下面已经把代码划分成小部分&#xf…

L1-008 求整数段和 (C++)

给定两个整数A和B&#xff0c;输出从A到B的所有整数以及这些数的和。 输入格式&#xff1a; 输入在一行中给出2个整数A和B&#xff0c;其中−100≤A≤B≤100&#xff0c;其间以空格分隔。 输出格式&#xff1a; 首先顺序输出从A到B的所有整数&#xff0c;每5个数字占一行&a…

matlab 迭代 混沌与分形实验报告,实验四 函数的迭代混沌与分形.doc

实验四 函数的迭代混沌与分形.doc 实验四函数的迭代、混沌与分形实验目的1认识函数的迭代&#xff1b;2了解混沌和分形迭代在数值计算中占有很重要的地位,了解和掌握它是很有必要的本实验将讨论用NEWTON迭代求方程根的问题,以及迭代本身一些有趣的现象1基本理论11迭代的概念给定…

小霸王双核/四核手机最新参数曝光

2019独角兽企业重金招聘Python工程师标准>>> 此前爆料出小霸王出手机&#xff0c;今天又有新消息啦。 现在又有消息人士给出了小霸王手机最新的参数情况&#xff0c;其厚度为9.8mm&#xff0c;配备的是4.5寸夏普IPS材质触摸屏&#xff0c;分辨率为960x540像素&#…

聊一聊跨域,Vue向Django请求数据的一些问题

1.做前后端分离 前端使用Vue程序&#xff0c;后端使用Django配合rest-framework。 那么前端Vue通过API接口拿到数据会出现跨域的问题&#xff0c;JSONP只是在get中会用到的&#xff0c;所以这里使用cors来解决一下。 一个Vue程序通过ajax或者axios发送一个请求过来&#xff0c;…

php配置控制器和视图位置,视图控制器

视图控制器视图控制器是连接控制器和模板的桥梁, 更是对模板的强大扩展基本用法视图控制器文件夹位于 app\web\views 目录下&#xff0c; 视图控制器的名称是和控制器的名称相对应的, 并在结尾加上View, Main控制器的默认的视图控制器类名为MainView&#xff0c;内容如下:names…

L1-016 查验身份证 (15 分)

一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下&#xff1a; 首先对前17位数字加权求和&#xff0c;权重分配为&#xff1a;{7&#xff0c;9&#xff0c;10&#xff0c;5&#xff0c;8&#xff0c;4&#xff0c;2&#xff0c;1&am…

中国互联网的十一种盈利模式

盈利模式一&#xff1a;在线广告 最主要最常见的网络在线盈利模式&#xff0c;国内比较好的是各大门户网站(新浪&#xff0c;搜狐等)&#xff0c;也包括行业门户&#xff0c;而且大多数个人网站的盈利模式也是这样&#xff0c;靠挂别人的广告生存。 新新兴的在线短视频网站…

grid布局初试

/*这是HTML*/<!DOCTYPE html> <html><head><meta charset"utf-8" /><title>main</title><link rel"stylesheet" href"css/header.css" /><link rel"stylesheet" href"css/aside.cs…