为ocserv配置证书登录

  • A+
所属分类:技术教程

为ocserv配置证书登陆

  • 确保已经安装ocserv.
  • 建立相关证书配置文件夹
    1. mkdir -p /etc/ocserv/template
  • 建立ca证书模板
    1. cat >/etc/ocserv/template/ca.tmp<<EOF
    2. cn = "Vicer CA"
    3. organization = "Vicer"
    4. serial = 1
    5. expiration_days = 1825
    6. ca
    7. signing_key
    8. cert_signing_key
    9. crl_signing_key
    10. EOF
  • 生成ca证书的密钥
    1. openssl genrsa -out /etc/ocserv/template/ca.key.pem 2048
  • 生成ca证书
    1. certtool --generate-self-signed --hash SHA256 --load-privkey /etc/ocserv/template/ca.key.pem --template /etc/ocserv/template/ca.tmp --outfile /etc/ocserv/template/ca.cert.pem
  • 建立user证书模板
    1. cat >/etc/ocserv/template/user.tmp<<EOF
    2. cn = "Vicer"
    3. unit = "Vicer"
    4. expiration_days = 1825
    5. signing_key
    6. tls_www_client
    7. EOF
  • 生成user证书的密钥
    1. openssl genrsa -out /etc/ocserv/template/user.key.pem 2048
  • 生成user证书
    1. certtool --generate-certificate --hash SHA256 --load-privkey /etc/ocserv/template/user.key.pem --load-ca-certificate /etc/ocserv/template/ca.cert.pem --load-ca-privkey /etc/ocserv/template/ca.key.pem --template /etc/ocserv/template/user.tmp --outfile /etc/ocserv/template/user.cert.pem
  • 生成Diffie-Hellman密钥
    1. certtool --generate-dh-params --outfile /etc/ocserv/dh.pem
  • 补全证书链
    1. cat /etc/ocserv/template/ca.cert.pem >>/etc/ocserv/template/user.cert.pem
  • 生成.p12证书文件
    1. openssl pkcs12 -export -inkey /etc/ocserv/template/user.key.pem -in /etc/ocserv/template/user.cert.pem -name "Vicer" -certfile /etc/ocserv/template/ca.cert.pem -caname "Vicer CA" -out /etc/ocserv/AnyConnect.p12 -passout pass:

  • 更改为证书登录方式
    1. [ -f /etc/ocserv/ocserv.conf ] && sed -i 's/^auth =/#auth =/g;s/^#auth = "certificate".*/auth = "certificate"/g' /etc/ocserv/ocserv.conf

导入证书

  • Windows
    下载AnyConnect.p12文件,双击,选择导入到本地计算机.
    之后一直下一步,不用输入任何密码(如果没设置密码).
  • iPhone
    只能用URL的方式导入,所以需要配置好HTTP服务器(如:nginx.).
    首先需要建立一个链接.
    点击诊断,证书,导入用户证书,粘贴AnyConnect.p12证书文件的地址.
  • WindowsPhone
    下载AnyConnect.p12文件,点安装.
    之后一直下一步,不用输入任何密码(如果没设置密码).
  • Android
    下载AnyConnect.p12文件到手机中.
    在OpenConnect中配置链接,用户认证的地方选择AnyConnect.p12文件即可.
图片引用自网络