{"id":2011,"date":"2026-08-14T17:48:08","date_gmt":"2026-08-14T23:48:08","guid":{"rendered":"https:\/\/www.schwie.com\/brad\/?p=2011"},"modified":"2026-08-14T17:48:08","modified_gmt":"2026-08-14T23:48:08","slug":"advantek-sr305-as-openvpn-server","status":"publish","type":"post","link":"https:\/\/www.schwie.com\/brad\/?p=2011","title":{"rendered":"Advantek SR305 as OpenVPN Server"},"content":{"rendered":"The user manual and interface for setting up OpenVPN on Advantek&#8217;s SR305 leaves much to be desired. I&#8217;m going to post what I did to successfully configure it for certificate-based authentication and handling multiple users. Also, since most of the SR305&#8217;s I deal with are on machine type internet connections where data use matters, this how-to is for a split-tunnel where OpenVPN clients can access the network they are connecting to, but they will not have access to the remote network&#8217;s internet connection.<br \/><br \/>\r\n\r\nI think this post will evolve a little over time as I deploy OpenVPN on more of the routers I like to access remotely, this post represents my start. First, we need to set up certificates for the SR305. I did this from my MacBook Pro where I can levereage more computing power, but I think the Advantek SR305 is likely able to do the same stuff if you log into via ssh. Here&#8217;s a code dump of what I did to configure certificates and transfer them from the MacBook Pro to the SR305:\r\n\r\n<code>cd Desktop\r\nmkdir SR305 #I made this folder to keep all the certificates and keys in one place for transferring later\r\ncd SR305\r\nopenssl genrsa -out ca.key 4096\r\nopenssl req -x509 -new -nodes -key ca.key -sha256 -days 3650 -out ca.crt -subj \"\/CN=SR305-CA\"\r\nopenssl genrsa -out sr305-server.key 2048\r\nopenssl req -new -key sr305-server.key -out sr305-server.csr -subj \"\/CN=sr305-server\"\r\ncat > server_ext.cnf <<EOF\r\nbasicConstraints=CA:FALSE\r\nkeyUsage = digitalSignature, keyEncipherment\r\nextendedKeyUsage = serverAuth\r\nsubjectAltName=DNS:sr305-server,IP:166.180.11.42\r\nEOF\r\nls\r\nopenssl x509 -req -in sr305-server.csr -CA ca.crt -CAkey ca.key -CAcreateserial   -out sr305-server.crt -days 1825 -sha256 -extfile server_ext.cnf\r\nopenssl dhparam -out dh.pem 2048<\/code>\r\n\r\n(switch to a machine that has an OpenVPN server running on it, I happen to have access to a machine that runs fine software from Cutedge Systems, specifically OpenVPN Enabler)\r\n\r\n<code>cd \/usr\/local\/cutedge\/openvpn\/sbin \r\n.\/openvpn --genkey secret ~\/Desktop\/ta.key<\/code>\r\n\r\n(transfer above \"ta.key\" file to my MacBook Pro's SR305 folder on the desktop and continue there)\r\n\r\n<code>openssl ca -gencrl -out crl.pem -config openssl.cnf #this command\/line can likely be removed \r\nopenssl genrsa -out client01.key 2048\r\nopenssl req -new -key client01.key -out client01.csr -subj \"\/CN=client01\"\r\ncat > client_ext.cnf <<EOF\r\nbasicConstraints=CA:FALSE\r\nkeyUsage = digitalSignature\r\nextendedKeyUsage = clientAuth\r\nEOF\r\nopenssl x509 -req -in client01.csr -CA ca.crt -CAkey ca.key -CAcreateserial   -out client01.crt -days 1825 -sha256 -extfile client_ext.cnf\r\nscp ca.crt dh.pem sr305-server.crt sr305-server.key ta.key root@mound.barr.com:\/etc\/certs\r\n<\/code>\r\n\r\nThe commands are mostly done, now we must configure some additional software through the SR305's web interface as follows:\r\n\r\n** I forgot what I was going to add here, will get to it later. **\r\n","protected":false},"excerpt":{"rendered":"<p>The user manual and interface for setting up OpenVPN on Advantek&#8217;s SR305 leaves much to be desired. I&#8217;m going to post what I did to successfully configure it for certificate-based authentication and handling multiple users. Also, since most of the &hellip; <a href=\"https:\/\/www.schwie.com\/brad\/?p=2011\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2011","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=\/wp\/v2\/posts\/2011","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2011"}],"version-history":[{"count":5,"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=\/wp\/v2\/posts\/2011\/revisions"}],"predecessor-version":[{"id":2182,"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=\/wp\/v2\/posts\/2011\/revisions\/2182"}],"wp:attachment":[{"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2011"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2011"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.schwie.com\/brad\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2011"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}