OpenVPN
, -∧,,∧-- 、 / (-ω-` ) / r-くっ⌒cソ、 / ん、起きてるよ? 大丈夫起きてるよ。 ノ '、 , 、 _, ' / / ちょっと横になるだけ。ちょっと目を瞑るだけ… .(_,. ././ ,(.,_ `'ー-、_,,..ノ/ ~`''ー--‐' 「OpenVPNで構築する超簡単VPN入門」の通りにインストールしましたが redirect-gateway を設定しようとしてハマり申した。 (openvpn-2.1.4.tar.gz → CentOS Linux 5.6) インストールされてるwebminには「Linux ファイヤウォール」 という項目があるのでそこから何か設定をするのでしょうか? せめて openvpn の config および NW 構成くらいは晒せ > 「OpenVPNで構築する超簡単VPN入門」 そんな本見ている人はほとんどいないんだし 挙げ句に webmin でなにしているかなんてわからん ccdで固定アドレス振ろうとして変だなーっと思ったんで easy-rsaで./build-key clientして client.crt見たら Issuer: Subject: の2行にそれぞれCN=hogeとCN=geboが書いてあったんだけど これって固定アドレス振るのに影響あるのかな〜っと クライアントとしてはSubjectのCNだけ見る筈なんだけど むー良くわからない ほしゅ >>529 どこら辺がわからん?SubjectのCNっぽいけど。 というか./build-key clientしたらclient.crtの中のSubject:はCN=clientになると思うんだけど違う? keyの名前かSubjectのCN使うのかは試してない。 tcp over tcpはダメというけどtcp over OpenVPN (udp)って大して速くない気がする tcpに限ればsshトンネルでも十分なような SMB/CIFSのトンネリングは遅いから、scp/sftp/WinSCP/FileZillaを使えば最速 OpenVPNはほとんどudpの転送用にしか使ってない 対向で70Mbps越えるくらいのWAN経由の時はそんなに遅いと思わなかったけどなあ 今はそこまで叩き出せる回線がないのでわからん 同じ経路・同じPC(FreeBSD同士)間で openvpn (tunなudp)より vtun のほうが全然速かった 下手すると一桁くらい違う というかopenvpn が何かに引っ掛かっているとしか思えない遅さだった ...ってこれひょっとして、Fのサーバだったりするのか? OpenVPNが動作する市販のVPNルータってある? OpenBlocksとか? あとはvyattaもそうかね。市販じゃないかもしらんが OpenVPNが遅い VMwareのゲストOSとホストOS間でVPN張ってホストOSからインターネットすると1.5Mbps位しか出ない cipher noneでも2.5Mbps位 なんで? 以前から openvpn 遅い説はあるんだよね… 同条件でvtunの方が数倍速かったり… iOSのクライアント出てるの今気づいた ttps://itunes.apple.com/app/id590379981 iOS版、Apple協力してるんだな多分 しかしfragment/mssfixが効かないみたいで、フレッツとか含む経路だと mtu絡みでudpで通せない(>>514 あたりの問題と同じと思う) iOSクライアント、サーバでmssfixは指定できるから tcpセッションに限ればudpでも通せるみたいだ iOSのtunnelbearとかHotspot shieldとか中身見たらOpenVPNだった 実行コマンド /etc/init.d/openvpn restart Response openvpnを停止中:OK openvpnを起動中:失敗 出力されるログ Mon Sep 16 22:36:48 2013 OpenVPN 2.2.1 x86_64-redhat-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] built on Sep 15 2013 Mon Sep 16 22:36:48 2013 MANAGEMENT: TCP Socket listening on 127.0.0.1:7505 Mon Sep 16 22:36:48 2013 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables Mon Sep 16 22:36:48 2013 Diffie-Hellman initialized with 1024 bit key Mon Sep 16 22:36:48 2013 Cannot load certificate file server.crt: error:02001002:system library:fopen:No such file or directory: error:20074002:BIO routines:FILE_CTRL:system lib: error:140AD002:SSL routines:SSL_CTX_use_certificate_file:system lib こんなエラーが出ています。 エラー内容から原因を特定しようとがんばりましたがわかりません。 現在探索中ですが、ご存知の方がいましたらご教示ください。 連没すいません。 環境はCentOS6.4の64bit版です。 またWindowsServer2012上に配置した仮想環境です。 エラーメッセージはサーバー証明書 server.crt ファイルが見つからない、というエラーです。 100%起動するはずがありません。 ある条件下の restart だけ失敗する、というのは変です。 CentOS で initscript で起動しているなら普通 /etc/openvpn/certs/server.crt ですけど、 設定で自由に変えられるので何ともいえません。 なのであとはエスパーさん待ちです。 TLS 1.1/1.2 対応まだですか? いつまで TLS1.0 で Control Channel ネゴって CBC モードで Data Channel 通信するつもりですか? >>548 どっちが先にパッチ作って採用されるか競争しようぜ SoftEther VPN Server が GPLv2 で公開されたから OpenVPNはもう用済みかな? 今やタブレットやスマホで使えないと魅力ないからなあ android版のクライアントアプリでtap使えますか? iOSがダメだったので乗り換え検討してます。 Andoidそのものでは対応してるが、 標準ではtun.koは省かれてる(入ってない)機種が多い そーゆーのでもroot取って自分で入れれば使える >>554 そうですか。 標準では無理なんですね……。 いや普通root取るだろw Android使うなら VPN使うようなユーザなら「普通」でしょ 単に画面がデカいだけのガラケー扱いのスマホユーザならともかく でも非rootでも openvpn 使えるんだから 無理にroot化前提にしなくてもいいな ところでAndroidでVPNって業務で使うことってある? なんのためにAndroidでVPN使うか想像できない 業務でVPN使ってる人ならごく当たり前のように使うと思うけど。 VPNのリモートアクセスの用途が想像できないんだとしたら それは別に「AndoroidでVPN」に限定した話ではなく 単に>>562 が業務でリモートアクセスVPNを使ったことないからだろう。 >>564 いやだから 業務でタブレット端末使ってるところなんて 今どき別に珍しくないだろ って話 個人のおうちサーバに繋ぐときにVPN使うだろ っていうか VPN が要らない人の気持ちがワカラン いや,もう少しいうなら openvpn のスレに来ておきながら VPNの必要性云々って話をするやつがワカラン だな >>567-568 話がズレとる >>562 は > VPNって業務で使うことってある? と言ってるぞw そりゃあるだろう Android だろうが Windowsだろうが 公衆回線から会社のサーバ/LANに繋ぐなら 当然暗号化するでしょ もっとも「業務」ならOpenVPNじゃなく 普通はL2TP/IPsec使うと思うがな 今日びの業務用ルーターなら大抵対応してるし iOSでもAndroidでもWindowsでもクライアントが標準で入ってるし 今更敢えて業務でOpenVPN使う理由がない 俺の自宅も今では1800円で買った中古RTX1100で VPN終端させてるからOpenVPNの出番がなくなった やっぱ楽だよ >>572 softearherは初心者にとっては神だろ。個人的には自動でダイナミックアドレスの取得&更新をしてくれるのがありがたい SoftEtherはOpenVPNより断然速いからWindowsがクライアントだったらありだろ。 UDP通せない環境だったらOpenVPNとかSoftEther使うしかないんじゃないの? 昨日セブンイレブンの7SPOTって公衆WiFiから自宅のOpenVPNにiPhoneから繋ごうとしたけど、 繋がらなかったんだよ。 家帰ってしてググったら情報殆ど無いけど セブンイレブンからVPNは無理って話と、 L2TPなら繋がるとかある。 原因は何なんだろうか。 7SPOTからOpenVPN繋がるよ。PCでしか試したことないけど。 当然ログインはしてるよね。 http://www.openvpn.jp/2014/04/08/783/ なんで TLS-Auth が今回の heatbeat extention 脆弱性に対して有効なのかわからん Control チャネルで秘密鍵と TLS-Auth鍵を覗かれたらアウトなんじゃないの? ていうか TLS-Auth ってMITM などの改ざん防止機能であって、秘密鍵を知っている (その結果 Data チャネルの共通鍵も知っている) 第三者の盗聴は防げないんじゃないの? おしえてエロい人 あーそもそも TLS-Auth 鍵を知らないと heartbeat extention のネゴシエーションまで 行けないってことか? それなら大丈夫かなぁ 現在長期出張中なのですが、 ホテルのLANがPPTPもIPsecも透過してくれないので慌てて自宅鯖(CentOS)にOpenVPNの設定してます。 ネット上の諸々の情報見ながら認証および接続までは行えたのですが、まったく通信できず困っています。 Android 側では公式版クライアントをインストールしています。 接続時のAndroid側ネットワーク情報(抜粋)は以下の通り [ ifconfig ] tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.10.10.6 P-t-P:10.10.10.6 Mask:255.255.255.252 UP POINTOPOINT RUNNING MTU:1500 Metric:1 [ route ] Destination Gateway Genmask Flags Metric Ref Use Iface default xxxxxx-xxxxxx 0.0.0.0 UG 0 0 0 rmnet_usb0 10.10.10.4 * 255.255.255.252 U 0 0 0 tun0 153.147.xxx.xxx * 255.255.255.252 U 0 0 0 rmnet_usb0 153.147.xxx.xxx * 255.255.255.255 UH 0 0 0 rmnet_usb0 173.194.xxx.xxx xxxxxx-xxxxxx 255.255.255.255 UGH 0 0 0 rmnet_usb0 当然自分自身のトンネルインタフェイス 10.10.10.6 へは ping が通りますが point to point で繋がっているはずの対向インタフェイス 10.10.10.5 へは ping が通りません。 また設定してある push "route 192.168.10.0 255.255.255.0" がルーティングテーブルに反映されていません。 自宅側のルータはYamaha RTX1100で以下が設定済みです。 ・UDP/1194 のフィルタリング解除 ・UDP/1194 をVPNサーバへフォワード ・10.10.10.0/24 のゲートウェイをVPNサーバへと指定 ちなみに server.conf は以下の通り。 port 1194 proto udp dev tun ca ca.crt cert server.crt key server.key dh dh1024.pem server 10.10.10.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "route 192.168.10.0 255.255.255.0" keepalive 10 120 comp-lzo user nobody group nobody persist-key persist-tun status /var/log/openvpn-status.log log /var/log/openvpn.log log-append /var/log/openvpn.log tls-auth ta.key 0 verb 3 mute 20 サーバ側の openvpn.log の最後の部分はこんな感じです。 Sun Apr 13 09:39:02 2014 hogehoge/153.147.xxx.xxx:60255 PUSH: Received control message: 'PUSH_REQUEST' Sun Apr 13 09:39:02 2014 hogehoge/153.147.xxx.xxx:60255 send_push_reply(): safe_cap=940 Sun Apr 13 09:39:02 2014 hogehoge/153.147.xxx.xxx:60255 SENT CONTROL [onishi2]: 'PUSH_REPLY,route 192.168.10.0 255.255.255.0,route 10.10.10.1,topology net30,ping 10,ping-restart 120,ifconfig 10.10.10.6 10.10.10.5' (status=1) Sun Apr 13 10:00:20 2014 hogehoge/153.147.xxx.xxx:60255 SIGTERM[soft,remote-exit] received, client-instance exiting 仕方なく現在は必要なプロトコルごとにSSH port forwardingを設定してやりくりしてますが 不便でしょーがないです。 チェックすべき点を指摘して頂けると大変助かります。 連投失礼。 ルーティングテーブルが変なのはちょっと気になりますが 結構いいところまで行ってる気がします。 ifconfig 10.10.10.6 10.10.10.5 を サーバーからPUSHしているので クライアント側で 10.10.10.6 に ping が通って 10.10.10.5 に ping が通らないのは 正しい動作です。 で、あなたが疎通すべきサーバーIPアドレスは 10.10.10.1 か 10.10.10.2 です。たぶん .1 です。 ping してみてください。 あと、"route 192.168.10.0 255.255.255.0" をサーバーから push するなら "iroute 192.168.10.0 255.255.255.0" も push してください。 route : OS のルーティングテーブル iroute : OpenVPN 内部のルーティングテーブル 面倒ですが2種類設定しないとルーティングされません。 クライアント側のルーティングテーブルが変なのはクライアント側の openvpn.log に答えが あると思います。 >>583 PPTPとかIPsecが通らない理由は? わざわざ狙って落とすことも考えにくいのでNATの仕様とかの問題では? なので、OpenVPNでudpにしてもどうせ通らないと予想。 せめてTCPにしたほうがいいよ。 >>587 Sun Apr 13 09:39:02 2014 hogehoge/153.147.xxx.xxx:60255 PUSH: Received control message: 'PUSH_REQUEST' ここまで来てるということはもう Control Channnel や Data Channnel の接続に 成功していて、クライアント側から「tunデバイス用のIPアドレスとかルーティング情報を PUSHしてくれー」と言われているフェーズなので、 OpenVPN の udp 接続のネゴシエーションは確立されています。 あとは適切な ifconfig や route をしてあげるだけです。 素人は引っ込んでろ、です。はい。 >>588 素人はお前だ。 「10.10.10.5 へは ping が通りません。」の時点で気づけ 上のコンフィグレーションと push の内容なら .10.10.10.5 に ping が通らないのは正しい。 クライアント側 サーバー側 [tun0 IP 10.10.10.6 - PtP端点 10.10.10.5] === VPN === [PtP端点 10.10.10.2 - tun0 IP 10.10.10.1] たぶんこういうコンフィグだから PtP端点の .5 と .2 から ping応答が無いのは問題ない。 疎通テストすべき サーバーIP は 10.10.10.1 なの。 ただ、現状ルーティングテーブルがおかしいのは否定できないし pushの直後どうもクライアントのOpenVPNが落ちてるっぽいのでクライアント側のログを見ろと言っている。 あぁ、うまくいかないから自分で落としてるのか それでもやっぱりクライアント側ログ見ないと何とも。 route を push するなら iroute も push しろ、は撤回 たぶん無くても自動設定される ログ見て bad address で drop されるようなら追加してみて 連投スマソ >>590 サーバ側のルーティングテーブルで 10.10.10.0/24 のゲートウェイが 10.10.10.2 となっている意味がわかりました。 クライアント側のログには特にエラー等は出てません。 最後は EVENT:CONNECTED info=(以下略) となっており正常に接続されているように見えます。 クライアント側から 10.10.10.1 へは ping 通ります。 しかし、サーバ側から 10.10.10.6 への ping が通りませんw 謎です。 もうちょっと調べてみます。 いろいろアドバイスありがとうございます。 アンドロイドの方を使ってるけど、スリープ状態での通信もvpnで通信してる? スリープから復帰すると、ステータス表示にあるOpenVPN Connectの接続時間がリセットされてるんだけど ちなみにアプリの方の接続時間はリセットされていません iPhoneのopenvpnアプリでは問題なく繋がっているんですが、その繋がる.ovpnの設定をコピーして PCのopenvpnソフトのconfigに入れて、いざ接続しようとしても全く繋がりません・・・ どうすれば繋がるのでしょうか? スマホで使っていた.ovpnは、PCで使うとき設定でどこか書き換えないといけないのでしょうか? OpenVPN作ろうと思ってここのページの http://komugi.net/archives/2013/02/14142643 ここまで進めた TLS-AUTH HMAC 共有鍵を生成する。 $ /usr/local/sbin/openvpn --genkey --secret /etc/openvpn/easy-rsa/keys/ta.key だけど/usr/local/sbin/openvpnにあるはずのopenvpnが見つからないんだけどこれはなんだろ? find / name oenvpnかけてもディレクトリしかみつからない。 OpenVPNでサーバーで設定したローカルアドレスを取得してるんで 接続は成功してると思うんですがインターネット接続がVPN経由になりません。 確認君とかを開くとmoperaのIPアドレスが表示されます。 どこを設定して接続を変更するんでしょうか? iptablesは下になっています。 1 $ iptables -A INPUT -p udp --dport 1194 -j ACCEPT 2 $ iptables -A INPUT -i tun+ -j ACCEPT 3 $ iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 4 $ iptables -A FORWARD -i tun+ -j ACCEPT 5 $ iptables -A FORWARD -m state --state NEW -o eth0 -j ACCEPT 6 $ iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT 7 $ iptables -A OUTPUT -m state --state NEW -o eth0 -j ACCEPT 8 $ iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j MASQUERADE server側の設定に push "redirect-gateway def1" がないとか? >>600 確認君での情報なんですがよくみると 現在接続している場所(IPv4):moperaのIPアドレス 現在接続している場所(元IPアドレス):自宅プロバイダのIPアドレスになってました。 現在接続している場所(元IPアドレス)の説明は proxyサーバを経由している場合、匿名性ではなくキャッシュに特化している場合はここの変数で 貴方の本来のIPアドレスが筒抜けになっている場合があります。 匿名性を求めるならばチェックをお忘れなく ってことなのでOpenVPNがProxy扱いで動いている?かもしれません。 server.confは下です。 port 1194 proto udp dev tun ca easy-rsa/keys/ca.crt #証明書は/etc/openvpnからの相対パスで指定する cert easy-rsa/keys/server.crt key easy-rsa/keys/server.key # This file should be kept secret dh easy-rsa/keys/dh1024.pem server 192.168.2.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "redirect-gateway def1" #すべての通信をVPN経由で行う push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" client-to-client #VPNに接続したクライアント同士の通信を行う keepalive 10 120 tls-auth easy-rsa/keys/ta.key 0 # This file is secret comp-lzo persist-key persist-tun status openvpn-status.log verb 3 client-to-client なんだろう? 相変わらず確認君でみると不思議なままだけどスマホからVPN接続すると2chに書き込める。 自宅プロバ規制なし。 mopera規制中。 一応OpenVPN建てた目的は果たせたけどL3のVPNってこういうもんなのかな? 全然すっきりしない。 VPNの疎通の話とルーティングテーブルの話とiptablesの話を一緒くたにして「うまくいきません」 とか喚いてるやつの相手するのもううんざりだわ >>608 難しいと思う。 ここの回答者は事象の切り分けが下手だからね。 Mac Tunnelblick VPN 接続先インストールエラー http://hole.sugutsukaeru.jp/archives/241 ここに書いていることをしたいんだけど > 余計なファイル「client.csr」を削除 これがわからん ファイル構成の確認の仕方もわからん もうちょっと分かるように書いてほしいよなあ もひとつ http://d.hatena.ne.jp/eikihaya/20121016/1350395793 ターミナルから、 defaults write com.openvpn.tunnelblick [接続先設定conf名]-doNotLoadTunKext -bool yes やったら、直った。 > [接続先設定conf名] が何を意味するのかわからん。vpnって入れてもダメだった 質問です。 OpenVPN 2.3.4 amd64-portbld-freebsd10.0 を、クライアントとして使ってます。 接続はtun、tcpです。 問題なく接続して通信もできているのですが、少し困った事が一つ。 /dev/tun0 は openvpnが生成してくれるのですが、 権限が crw------- 1 uucp dialer となっています。 crw-rw-rw- あたりが理想だと思っているのですが、どこで設定するのかわかりません。 このあたりの設定はどうやればいいでしょうか。 tun0で通信しようとしたらNGになるんですよ。 例えば、すべてのIPで待ち受けするようなサービスなら tun0に割り当てられているIPだけオープンできない。とか。 より具体的には、一時間ごとに named[866]: could not listen on UDP socket: permission denied named[866]: creating IPv4 interface tun0 failed; interface ignored なんてエラーが出力されてうざい・・・と (^-^; 614です。 ちなみに、/dev/tun0のパーミッションって crw------- 1 uucp dialer となるのが仕様なんでしょうか。 同じような方いらっしゃいます? Mac Tunnelblick VPN 接続先インストールエラー http://hole.sugutsukaeru.jp/archives/241 余計なファイル「client.csr」を削除の仕方が不明 http://d.hatena.ne.jp/eikihaya/20121016/1350395793 ターミナルから、 defaults write com.openvpn.tunnelblick [接続先設定conf名]-doNotLoadTunKext -bool yes やったら、直った。 [接続先設定conf名] ?? OPENVPN GUIをWIN8.1にインストールし、win7で使用していたconfigフォルダを 丸ごとコピーしましたが、うまく動いてくれません。 動作 GUIが立ち上がるものの、処理ログの部分が真っ白のままパスワードも聞かれず、 接続エラーになります。 win7では処理ログが流れてからパスワードを聞かれるのですが。 「設定の編集」を実行すると、使いたい.ovpnファイルが開かれるので、 ファイルは読み込めていると思うのですが。 変えた設定 exeはwin7モード、管理者権限で起動 tempフォルダは.ovpnで定義しなおしてあります。 ※ユーザー名が日本語なので この情報だけで何かわかりますでしょうか? ここはUNIX板なのでWindowsのことはさっぱりわかりません! >>623 そのconfigフォルダには何が入ってる? read.cgi ver 07.5.0 2024/04/24 Walang Kapalit ★ | Donguri System Team 5ちゃんねる