我有一台 centos 机器,我正在关注https://library.linode.com/networking/openvpn/centos-5本指南。我遇到的问题是无法添加多个客户端。
当我尝试添加多个客户端时,它显示:
cd /etc/openvpn/easy-rsa/2.0/
[root@server]# ./build-key newclient1 Please edit the vars script to reflect your configuration, then source it with "source ./vars". Next, to start with a fresh PKI configuration and to delete any previous certificates and keys, run "./clean-all". Finally, you can run this tool (pkitool) to build certificates/keys.
[root@server]#
我做错了什么?如何将另一个客户端添加到 VPN?
答案1
如果您已经使用此目录构建了 CA 密钥和证书、服务器密钥和证书、Diffie-Hellman 参数以及至少一个其他客户端密钥和证书,那么您应该有一个可用的“easy-rsa”配置。在这种情况下,您只需执行以下操作:
cd /etc/openvpn/easy-rsa/2.0/
source ./vars
./build-key newclient1
正确回答所提出的问题build-key
,它应该会生成一个新密钥和一个由 CA 签名的相应证书。通过安全通道(例如 scp)将密钥和证书(以及 CA 证书)复制到客户端的机器。从那里,我假设你知道该怎么做。
答案2
您需要检查/etc/openvpn/easy-rsa/2.0/vars
脚本中的配置选项以确保它们正确无误,然后按照输出所示运行脚本以设置您的环境设置,从而使密钥生成能够正常工作。
您正在使用的指南确实在标题为配置公钥基础设施变量你应该这么做。
具体来说,当环境中未设置 $KEY_DIRS 时,由于未运行 vars 脚本,因此need_vars
将调用显示上述文本的函数。pkitool
答案3
这是一个OpenVPN 服务器密钥生成 shell 脚本我编写了基于 easy-rsa 脚本:
服务器密钥生成:
#! /bin/bash
# ./var_gen.sh IN MS PUNE MYCOMPANY [email protected] [email protected] MYCOMPANY-OU
# $1 = CONUTRY
# $2 = STATE
# $3 = CITY
# $4 = COMPANY
# $5 = Email
# $6 = EMAIL
# $7 = Commonname
if [ $# -lt 7 ] ; then
echo "Need Option Variables
CONUTRY
STATE
CITY
COMPANY
Email
EMAIL
Commonname
i.e
sh var_gen.sh IN MS PUNE MYCOMPANY [email protected] [email protected] MYCOMPANY-OU
"
exit 0
fi
sw_ovpn_server_setup()
{
cd /etc/openvpn/easy-rsa/2.0/
chmod +rwx *
./clean-all
source ./vars
./build-ca
./build-key-server server
cp -f /etc/openvpn/easy-rsa/2.0/keys/{ca.crt,ca.key,server.crt,server.key} /etc/openvpn/
./build-dh
cp -f /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem /etc/openvpn/
/etc/init.d/openvpn restart
}
var_gen()
{
country=$1
state=$2
city=$3
org=$4
email=$5
keycn=$6
keyou=$7
pkcpath=$8
pkcpin=$9
echo "
#! /bin/bash
export OPENSSL="/usr/bin/openssl"
export PKCS11TOOL="pkcs11-tool"
export GREP="grep"
export KEY_CONFIG="/etc/openvpn/easy-rsa/2.0/openssl-0.9.8.cnf"
export KEY_DIR="/etc/openvpn/easy-rsa/2.0/keys"
export PKCS11_MODULE_PATH="dummy"
export PKCS11_PIN="dummy"
export KEY_SIZE=1024
export CA_EXPIRE=365
export KEY_EXPIRE=365
export KEY_COUNTRY="$country"
export KEY_PROVINCE="$state"
export KEY_CITY="$city"
export KEY_ORG="$org"
export KEY_EMAIL="$email"
export KEY_CN=`od -vAn -N4 -tu4 < /dev/urandom |xargs`
export KEY_NAME="$keyou-simplewall"
export KEY_OU=$keyou
#export PKCS11_MODULE_PATH=$pkcpath
#export PKCS11_PIN=$pkcpin
"
}
var_gen $1 $2 $3 $4 $5 $6 $7 >/etc/openvpn/easy-rsa/2.0/vars
sw_ovpn_server_setup