OpenConnect, an alternative SSLVPN client

臺灣高品質學術研究網路 (TWAREN) 前幾年開始推廣 SSLVPN 的服務,由全國 POPs 各提供一個網段做為 VPN 的 subnet,讓使用者在外頭也可以取得單位內部的 IP 位址。討厭的是,國網提供的 AnyConnect 會綁架路由表,而暨大這邊加入 SSLVPN 服務後,居然把 policy 設成了 full tunneling,讓整個 default route 都走 SSLVPN,但想出校外又出不去。儘管校方沒有採用 Split tunneling 是基於諸多考量(安全問題, 還有不想太多人掛網… etc.),但用起來還是相當不便,所以花點時間找了一個開放原碼的solution…

OpenConnectCisco AnyConnect SSL VPN 的 LGPL 用戶端實做,特色是擁有原本 vpnc 沒有支援的 SSL 連線功能,重點是不理 routing policy,可以自己亂玩。目前已經進入了 Debian 的 squeeze (testing)

國網 SSLVPN 的使用者,可以參考命令參數如下:
openconnect --user=<使用者名稱> --authgroup=<認證群組> -b -l -i <介面名稱> sslvpn[1-7]*.twaren.net
認證群組:視使用何單位的 Radius Server 而定,這個參數會決定取得何單位的 IP 位址。
-b: 背景執行
-l: 執行訊息送 Syslog
介面名稱: Interface name,可視喜好命名,如 tun0, vpn0, sslvpn0… etc.
TWAREN 備有7台 SSLVPN Server,分別是 sslvpn1 至 sslvpn7。以往 AnyConnect 直接使用 sslvpn.twaren.net 就會自動分配至 sslvpn1 至 sslvpn7;OpenConnect 須自行指定

以暨大為例:
openconnect [email protected] --authgroup=ncnu.edu.tw -b -l -i sslvpn0 sslvpn3.twaren.net
下命令後會詢問 Passphrase (即暨大的 E-Mail 密碼),輸入後即可建立通道連線。

另外,如要在自家 router 上跑 OpenConnect,務必注意 SSLVPN 這條線的 MTU,以筆者的經驗是 1406 bytes。跨網段連線最好取一下 Path MTU,或是 router 上頭採用 netfilter TCPMSS 直接修改 TCP SYN 的 MSS 欄位。

分類: 未分類,標籤: , , 。這篇內容的永久連結

在〈OpenConnect, an alternative SSLVPN client〉中有 2 則留言

  1. Jie表示:

    Ha…您好…我現在才看到您這一篇文章…
    我是當年TWAREN SSLVPN的建置人…
    but我已經離職有半年之久了…
    沒想到還可以看到有關TWAREN SSLVPN的相關文章…
    真是令人懷念阿…^^

  2. alextwl表示:

    前輩您好 ^^

    不過前陣子聽說國網把cisco sslvpn都換成juniper了,這篇恐怕也派不上用場了… :'(

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *