
少し前まで、ZyXelはオープンソースモジュールを使用してOPKGをサポートしていました。これは、一般的なホームルーター向けOpenWRTオペレーティングシステムのパッケージです。 これは、それらのいくつかがZyXel Keeneticに賭けることができることを意味します。 この記事では、パッケージを組み込み 、数千のパッケージを含むEntwareリポジトリをセットアップし、ルーターをOpenVPNクライアントとしてセットアップするプロセスについて説明します。
現在、 このフォーラムにはプロジェクトが居住しており、議論されています。
要件-4GII / IIIモデルを除く、NDMSv2の最新バージョンおよびUSBポートでの速度。 おそらく、一部のデバイスでは、必要なコンポーネントを表示するために、ファームウェアのベータ版に切り替える必要があります。
まず、ルーターの設定に移動し、そこでアップデートでインストールし、必要なオプション、Open Packageサポートのコンポーネント、IPv6、およびUSBストレージセクションのすべてのコンポーネントを選択します。 IPv6は、トラフィックをトンネルに送るときにnetfilterが適切に機能するために必要です。 また、構成ファイルがUSBフラッシュドライブに直接ダウンロードされず、ネットワーク経由でダウンロードされる場合は、デバイスにFTPコンポーネントが必要になります。
フラッシュドライブで、ラテン上の任意のラベル(たとえば、keendev)でext2 / ext3パーティションを作成し、ルーターに接続して、keendevというラベルのパーティションにインストールフォルダーを作成します。
次に、インストールファイルをこのフォルダーにアップロードする必要があります。
-Keenetic DSL、LTE、VOXの場合-mips;
-他のKeeneticの場合-mipsel ;
次に、[アプリケーション]> [OPKG]ページで、[有効]を選択します。 次に、リストから必要なUSBドライブを選択し、[スクリプトinitrc:]フィールドに/opt/etc/init.d/rc.unslungと入力して[適用]をクリックします。
すべてが正しく行われた場合、「... Entware-Keeneticのインストールが完了しました!」という行がしばらくしてシステムログに表示されます。
これで、ssh、rootログイン、zyxelパスワードを介してキネティクスにアクセスできます。
パスワードは、キネティクスパスワードに関連付けられていません。 必要に応じて、passwdコマンドで変更します。
まず、パッケージリストを更新します:opkg update
opkg install%commandname%によるパッケージのインストール
OpenVPNクライアントが機能するには、次のパッケージが必要です。
必要なパッケージ
ドロップベア-2015.71-3
findutils-4.6.0-1
iptables-1.4.21-2
ldconfig-1.0.13-4
libc-1.0.13-4
libgcc-5.3.0-4
liblzo-2.09-1
libndm-1.0.22-1
libopenssl-1.0.2h-1
libpthread-1.0.13-4
librt-1.0.13-4
libssp-5.3.0-4
libstdcpp-5.3.0-4
ndmq-1.0.2-1
openvpn-openssl-2.3.10-1
opt-ndmsv2-1.0-4
terminfo-6.0-1
zlib-1.2.8-1
findutils-4.6.0-1
iptables-1.4.21-2
ldconfig-1.0.13-4
libc-1.0.13-4
libgcc-5.3.0-4
liblzo-2.09-1
libndm-1.0.22-1
libopenssl-1.0.2h-1
libpthread-1.0.13-4
librt-1.0.13-4
libssp-5.3.0-4
libstdcpp-5.3.0-4
ndmq-1.0.2-1
openvpn-openssl-2.3.10-1
opt-ndmsv2-1.0-4
terminfo-6.0-1
zlib-1.2.8-1
リストにインストールされたopkgを使用して、既にインストールされているものを見つけることができます。アンインストールされたものは、パッケージ名のみを最後にバージョンを指定せずにインストールする必要があります。
/ opt / etc / openvpnフォルダーで、openvpn.confファイルを作成して、touchおよびviを支援するために、次の形式について作成する必要があります。
設定ファイル形式の例
クライアント
開発者
高速IO
永続キー
持続する
ノバインド
remote%serverIP %% port%
リモートランダム
引く
comp-lzo
tls-client
verify-x509-nameサーバー名プレフィックス
ns-cert-typeサーバー
キー方向1
ルートメソッドexe
ルート遅延2
tun-mtu 1500
フラグメント1300
mssfix 1450
動詞3
暗号AES-256-CBC
キーサイズ256
auth SHA512
sndbuf 524288
rcvbuf 524288
-----証明書の開始-----
%証明書%
-----証明書の終了-----
----- RSAプライベートキーの開始-----
%rsa key%
----- RSAプライベートキーの終了-----
<tls-auth>
#
#2048ビットOpenVPN静的キー
#
----- OpenVPN静的キーV1の開始-----
%key%
----- OpenVPN静的キーV1の終了-----
</ tls-auth>
-----証明書の開始-----
%証明書%
-----証明書の終了-----
開発者
高速IO
永続キー
持続する
ノバインド
remote%serverIP %% port%
リモートランダム
引く
comp-lzo
tls-client
verify-x509-nameサーバー名プレフィックス
ns-cert-typeサーバー
キー方向1
ルートメソッドexe
ルート遅延2
tun-mtu 1500
フラグメント1300
mssfix 1450
動詞3
暗号AES-256-CBC
キーサイズ256
auth SHA512
sndbuf 524288
rcvbuf 524288
-----証明書の開始-----
%証明書%
-----証明書の終了-----
----- RSAプライベートキーの開始-----
%rsa key%
----- RSAプライベートキーの終了-----
<tls-auth>
#
#2048ビットOpenVPN静的キー
#
----- OpenVPN静的キーV1の開始-----
%key%
----- OpenVPN静的キーV1の終了-----
</ tls-auth>
-----証明書の開始-----
%証明書%
-----証明書の終了-----
OpenVPNプロバイダーがrouter.ovpnファイルを提供する場合、それも使用できます。 次に、起動スクリプト/opt/etc/init.d/S20openvpnで、次の行で指定する必要があります。
ARGS = "-daemon --cd / opt / etc / openvpn --config router.ovpn"
使用するインターフェイスをiptablesスクリプトで示すには、ifconfigコマンドを使用してそれらを見つける必要があります。
ルーターのローカルアドレスに一致するinet addrを持つインターフェイスを探しています。 たとえば、br0になります。
ここで、cd /opt/etc/ndm/netfilter.dフォルダーにiptablesスクリプトを登録する必要があります。 openvpnfil.shと呼びましょう:
iptablesスクリプト
#!/ bin / sh
["$ table"!= filter] && exit 0
iptables -I FORWARD -i br0 -o tun + -j ACCEPT
iptables -I FORWARD -i tun + -o br0 -j ACCEPT
iptables -t nat -Aポストルーティング-o tun + -j MASQUERADE
["$ table"!= filter] && exit 0
iptables -I FORWARD -i br0 -o tun + -j ACCEPT
iptables -I FORWARD -i tun + -o br0 -j ACCEPT
iptables -t nat -Aポストルーティング-o tun + -j MASQUERADE
次に、ルーターを再起動する必要があります。
再起動後、起動時にsshを介して再度起動し、OpenVPNがオンになっていない場合はオンにします。
/opt/etc/init.d/S20openvpn start
キネティクスログ(Webコンフィギュレーターで既に)で、すべてが正常かどうかを確認できます。 また、問題が発生した場合、どこで何が悪いのかを示します。
