`

openvpn的client使用正确的用户名和密码后无法连接server的原因

阅读更多
openvpn除了证书的验证方式,还可以指定用户名和密码的验证方式
client端配置文件加入
auth-user-pass
连接时会弹出方框提示用户输入用户名和密码
server端配置文件加入
auth-user-pass-verify /tmp/openvpn/server/up.sh via-env
指定openvpn使用up.sh进行验证,通过环境变量将需要验证的用户名和密码传入
up.sh代码如下

#!/bin/sh   
###########################################################  
# checkpsw.sh (C) 2004 Mathias Sundman <mathias@openvpn.se> 
#  
# This script will authenticate OpenVPN users against  
# a plain text file. The passfile should simply contain  
# one row per user with the username first followed by  
# one or more space(s) or tab(s) and then the password.  
 
PASSFILE="/tmp/openvpn/server/up.txt" 
LOG_FILE="/tmp/openvpn/openvpn-password.log" 
TIME_STAMP=`date "+%Y-%m-%d %T"`  
 
###########################################################  
 
if [ ! -r "${PASSFILE}" ]; then  
  echo "${TIME_STAMP}: Could not open password file \"${PASSFILE}\" for reading." >> ${LOG_FILE}  
  exit 1  
fi  
 
CORRECT_PASSWORD=`awk '!/^;/&&!/^#/&&$1=="'${username}'"{print $2;exit}' ${PASSFILE}`  
 
if [ "${CORRECT_PASSWORD}" = "" ]; then   
  echo "${TIME_STAMP}: User does not exist: username=\"${username}\", password=\"${password}\"." >> ${LOG_FILE}  
  exit 1  
fi  
 
if [ "${password}" = "${CORRECT_PASSWORD}" ]; then   
  echo "${TIME_STAMP}: Successful authentication: username=\"${username}\"." >> ${LOG_FILE}  
  exit 0  
fi  
 
echo "${TIME_STAMP}: Incorrect password: username=\"${username}\", password=\"${password}\"." >> ${LOG_FILE}  
exit 1 


PASSFILE指定保存用户名和密码的文件,格式是一对用户名和密码写在一行,中间使用空格分隔

今天在调试openvpn客户端使用用户名和密码登陆时,无法连接,查看服务端的log显示



原来是需要在server端配置文件加入--script-security 3,问题即可解决,查看了下这个选项
--script-security level:
Where level can be:
0 -- strictly no calling of external programs
1 -- (default) only call built-ins such as ifconfig
2 -- allow calling of built-ins and scripts
3 -- allow password to be passed to scripts via env
  • 大小: 50.8 KB
分享到:
评论

相关推荐

    openvpn-gui-11.tar

    openvpn-gui-11.tar 源码

    secoclient认证失败原因

    secoclient认证失败原因,11种情况

    SecoClient.zip|SecoClient.zip

    2. **配置指南**:如何设置远程连接参数,如服务器地址、端口号、用户名和密码等。 3. **安全设置**:推荐的安全策略,如启用双因素认证、设置强密码、定期更新客户端等。 4. **连接方法**:详细的操作步骤,包括...

    openvpn-1.0.2源码

    openvpn-1.0.2源码

    华为SVNClient

    - 配置SVN服务器:在客户端中输入SVN服务器地址、用户名和密码。 - 检出项目:从版本库中获取工作副本,开始开发。 - 操作文件:修改代码后,可以使用客户端进行提交、更新、比较等操作。 - 团队协作:通过版本...

    luci-app-pptp-server_2.0-7_all.ipk

    网上收集来的,别问干什么用,我什么都不知道,给OPENWRT的GUI界面添加什么功能,配置某些功能方便点而已

    openvpn-1.0.3.tar源码

    openvpn-1.0.3.tar源码

    华为SVNClient for mac 3.1.2.38

    首次使用时,可能需要配置SVN服务器地址、用户名和密码。 4. **主要功能**: - **版本提交**:保存并记录对文件或目录的更改。 - **更新与同步**:获取服务器上的最新版本,与本地副本保持一致。 - **差异查看**...

    SVN Adapter V1.0 签名认证WIN 11 华为secoClient 客户端 提示提示用户与对方建立连接超时,配

    secoClient 链接失败,SVN Adapter V1.0 签名认证警告。 WIN 11 华为secoClient 客户端 提示“提示用户与对方建立连接超时,配置错误或网络故障” 具体操作参考...

    softether client

    该软件是一个能虚拟网卡和集线器(HUB)的工具,只要可以访问互联网,都可以使用它来组建远程局域网。在此虚拟的局域网上能进行所有物理局域网上的操作。可以互相访问,可以联网玩只支持局网的游戏(TCP/IP)。该...

    SVNClient华为工具

    在实际使用中,开发人员需要熟悉SVN的基本操作,掌握如何正确使用华为SVNClient来实现代码版本控制,从而促进团队间的协作,保证项目的顺利进行。同时,良好的版本控制习惯,如频繁提交、清晰的提交信息以及及时解决...

    secoclient-win-64-1.50.3.13

    secoclient-win-64-1.50.3.13,Windows 64位版本。亲测可用。

    华为 SecoClient客户端 终端用户接入指南

    HUAWEI SecoClient客户端 终端用户接入指南

    iNodeClient for linux

    2. **编译安装**:解压源码后,使用`configure`脚本进行配置,然后通过`make`命令进行编译,最后用`sudo make install`安装到系统中。 3. **配置文件**:创建或修改配置文件,设置网络服务器地址、端口、认证方式等...

    SecoClient连接返回“接受返回码超时”解决办法

    1、到设备管理器-网络适配器下,禁用SVN Adapter V1.0。 2、把下载的文件解压,把SVNDrv.sys复制到到C:\Windows\System32\drivers(会提示存在,直接覆盖)。 3、把第一步禁用的SVN Adapter V1.0启用,问题解决。

    CISCO_ASA防火墙_ASDM_安装和配置

    然后,安装 ASDM 管理器,输入用户名和密码,点击“是”,出现以下对话框,点击“Download ASDM Launcher and Start ASDM”,安装完后从网上下载一个 JAVA 虚拟机软件(使用 1.4 以上 Java 版本),进入 ...

    cisco-client-winx64

    找了很久的解决方案,在WIN10下可以用得CISCO 的解决方案,亲测可用。下载后,打开压缩包,进入【cisco win...如果显示已连接,但仍然无法访问远程机器,有可能是因为勾选了“Allow Local LAN Access”,去掉勾选试试。

    secoclient mac

    "secoclient mac" 是一款针对苹果Mac...总的来说,secoclient mac可能是一款实用的工具,但在使用前务必确保其安全性和合规性,以保护个人和企业的数据安全。同时,对软件的持续监控和更新也是确保其效能和安全的关键。

    open-build-master+Open虚拟专网2.5源代码+依赖项源代码

    与原版open-build-master相比,我做了稍稍修改,已经包含Open虚拟专网2.5源代码和依赖项源代码,需要VS2019、ActivePerl、WDK10,可以直接按照我写的教程进行编译,100%可编译。

    softether-client-v4.34-9745-beta-2020.04.05-windows-x86_x64-intel.zip

    softether-client-v4.34-9745-beta-2020.04.05-windows-x86_x64-intel.zip

Global site tag (gtag.js) - Google Analytics