share facebook facebook2 twitter menu hatena pocket slack

2013.09.19 THU

OpenVPNにユーザー/パスワードでログイン(LDAP認証)

鈴木 宏康

WRITTEN BY鈴木 宏康

スズキです。

下記のようにOpenVPNサーバの準備が行われていることが前提です。

VPC上にOpenVPN(CentOS6)をインストール

LDAP認証を行うためには、下記のパッケージをインストールします。


# yum -y install openvpn-auth-ldap
...

今回のOpenVPNの設定ファイルは次の通りです。


# cat /etc/openvpn/server.conf
local 10.0.0.4
port 1194
proto tcp
dev tun
dh dh1024.pem
ca ca.crt
cert server.crt
key server.key
keepalive 10 120
server 192.168.0.0 255.255.255.0
plugin /usr/lib64/openvpn/plugin/lib/openvpn-auth-ldap.so "/etc/openvpn/auth/ldap.conf"
push "route 10.0.0.0 255.255.0.0"
verb 3
client-cert-not-required
username-as-common-name
  • “plugin”で”openvpn-auth-ldap”のプラグインを指定しています。
  • “client-cert-not-required”でクライアント証明書無しにユーザー/パスワードの認証のみで接続できるようにしています。
  • “username-as-common-name”は認証時のユーザー名を証明書のコモンネームにする設定です。

LDAP(OpenLDAP)は下記のようにユーザーデータが登録されていることを前提とします。

phpLDAPadminでユーザーを作ったユーザーでCentOSにログイン

“openvpn-auth-ldap”の設定ファイルは下記のようにしています。


# cat /etc/openvpn/auth/ldap.conf

URL ldap://10.0.0.5
BindDN cn=Manager,dc=suz-lab,dc=com
Password secret
Timeout 15
TLSEnable no
FollowReferrals yes



BaseDN "ou=user,dc=suz-lab,dc=com"
SearchFilter "(&(uid=%u))"
RequireGroup false

この状態でOpenVPNサーバを起動しておきます。

ここまで準備ができたら下記のようにMacから接続してみます。

Mac(10.8)からCentOS(6.3)にOpenVPNでVPN接続

必要なファイルは下記となります。


$ ls -1
ca.crt
config.ovpn

設定ファイルは下記の通りです。


$ cat config.ovpn
client
auth-user-pass
dev tun
proto tcp
ca ca.crt
remote xxx.xxx.xxx.xxx 1194

※”auth-user-pass”を指定することで、ユーザー/パスワードの認証をするようになります。

実際にTunnelblickで接続しようとすると、下記のようにユーザー/パスワードの入力が求められます。

OpenLDAPに登録されているデータを入力することで接続できることを確認できるはずです。

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら

鈴木 宏康

鈴木 宏康

愛知県生まれ。東京工業大学大学院修士課程修了。在学時より、ベンチャー企業でインターネットに関する業務に携わり、現在はクラウド(主にAmazon Web Services)上での開発・運用を軸とした事業の、業務の中心として活躍。