`

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.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)。该...

    secoclient-win-64-1.50.3.13

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

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

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

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

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

    iNodeClient for linux

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

    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

    默认设备密码.docx

    常用的网络设备默认密码

    cisco secure client 5.0.01242(macos)

    added posturecli.exe option so multiple clients can connect to the posture subsystem and send data, instead of just one client and one server communicating, which was all the UI process allowed. ...

Global site tag (gtag.js) - Google Analytics