iPadのホストファイルを編集できますか?


87

大規模な脱獄なしではこれが可能であるとは思えませんが、iPad(またはiOSデバイス)のhostsファイルを編集することはまったく可能ですか?


1
脱獄なしではありません。ジェイルブレイクされると、他のUnix / BSDシステムと同じになります。たぶん、これまでにやったことがない。
Jasarien、2011年

1
アプリがホスト名とそれらの正当なIPの間の関連付けを変更できるかどうか想像してみてください。
Jano、2011

2
@janoおそらくその問題はMac App Storeのアプリにも存在するでしょう。これは、hostsファイルを編集する前にパスワードを要求するOSXによって処理され、おそらくAppleのアプリの検証手順によっても処理されます。
Danyal Aytekin、2011

3
@Jano:Microsoft Windowsではこれが可能になり、問題は発生しません。管理者権限が必要です。そして、hostsファイルを変更したいのには正当な理由があります(すべてDNSサーバーがなくてもVPNの問題に対処できます)。
Josh Mouch、

回答:


46

いいえ。アプリが変更できるのは、自分のサンドボックス内のドキュメントディレクトリ内のファイルのみです。これは、セキュリティ、およびインストール/アンインストールの容易さのためです。したがって、これはジェイルブレイクされたデバイスでのみ実行できます。


1
サンドボックス内のみで、ドキュメントディレクトリ内だけではありません(iOSアプリケーションプログラミングガイド>アプリケーションランタイム>ファイルシステムを参照)。
Jano


47

いいえ、iPadのホストファイルを(ジェイルブレイクなしで)変更することはできませんが、回避策はあります。

これが私のシナリオです:

  • Mac OS X、IP 192.168.2.1あり、Webアプリを実行
  • iPad、Webアプリをテストするデバイス
  • Charles(Mac用)、iPadのHTTPプロキシを有効にします

Macで実行されているWebアプリをiPad経由でテストしますが、直接アクセスできません。

解決策は私にとってうまくいきます:

  • まず、サーバーとiPadが同じローカルネットワークにあることを確認します。
  • 次に、チャールズプロキシを設定し、メニューの[プロキシ]> [プロキシ設定...]に入力してPort(ほとんどの場合8888)、切り替えますEnable transparent HTTP proxying

ここに画像の説明を入力してください


  • iPadでプロキシ設定をセットアップします。

ここに画像の説明を入力してください

これで、iPadでWebアプリにアクセスできます。

もちろん、LinuxではSquidVarnish、Wondowsではフィドラーなど、他のプロキシツールを使用できます。


1
それは質問の答えにはなりません...しかし、これは、ほとんどの人がホストファイルを編集する目的に適した、実装が簡単で、切り替えが簡単な優れたソリューションです。
Matt Kenefick、2015

素晴らしいソリューション!クリーンで実装が簡単。私はワークステーションのOSとしてLinuxを使用しているため、tinyproxyを使用し、プロキシはiPhoneで適切に機能します。ありがとう!
エデンショー2017

セキュリティの問題が原因で、iOSの新しいバージョンでは機能しない可能性がありNodeJsます。モジュールフィルターネット
vanduc1102

1
「iPadでWebアプリにアクセスできるようになりました」-しかし、どうやって?アプリが「myapp.dev.domain.com」でのみ機能する場合、iPadは名前をどのように解決しますか。これがホストファイルの
グレッグウッズ

@GregWoods私は同様の設定をしており、これは 'myapp.env.domain.com'にアクセスすることで私にとってはうまくいきましたが、数回試した後にのみ
RenaissanceProgrammer

6

これを行う最も簡単な方法は、XCodeを使用してiPadシミュレーターを実行し、ホストシステムのホストファイル(/ etc / hosts)にエントリを追加して、テストサイトを指すことです。


6
質問は、シミュレータではなくデバイスに関するものです。
Janak Nirmal 2012年

5
@JanakNirmalしかし、それでも役立つ回答です。
Simon

6

私は同じ機能が必要でした、そして脱獄をすることはノーノーです。1つの解決策は、自分でDNSサーバー(MaraDNS)をホストし、iPad /電話でWi-Fi設定に移動して、そこにカスタムDNSサーバーを追加することです。

プロセス全体でたった10分で完了しました。

1)MaraDNSをダウンロードする

2)実行 mkSecretTxt.exe管理者として

3)mararcファイルを変更します。

ipv4_bind_addresses = "put your public IP Here"
timestamp_type = 2
random_seed_file = "secret.txt"

csv2 = {}
csv2["Simple.Example.com."] = "example.configuration"

example.configuration」というファイルを同じフォルダに追加しますrun_maradns.bat

4)example.configurationファイルを編集します。

Simple.Example.com. 10.10.13.13 ~

5)すべてのファイアウォールを無効にする(便利)

6)ファイル " run_maradns.bat"を実行します

7)エラーはないはずです。

8)次に示すように、DNSサーバーをリストに追加します。http//www.iphonehacks.com/2014/08/change-dns-iphone-ipad.html

9)動作します!


1
ここでのすべての回答は、OPがHTTPトラフィックをスニッフィングすることを前提としていますが、これはDNS解決のスプーフィング(hostsファイルの変更として)に焦点を当てた唯一の実際の回答
Filipe Pina

5

はい、iPadのhostsファイルを編集できますが、脱獄する必要があります。それが終わったら、Cydia(アプリマーケット)をダウンロードして、iFileを入手します。hostsファイルは「/ etc / hosts」内にあります。


4

チャールズのようなものを使用して透過プロキシを設定し、そのようにトラフィックをリダイレクトすることでそれを行うことができると思います


3

開発目的で使用するWorkarond:

  1. 独自のプロキシサーバーを作成します(1つのオプションはLinux上のSquidです)。
  2. ホストファイルにドメインを設定します。
  3. IPAD / IPHONEにプロキシサーバーを設定すると、ホストで使用できます。

素敵なシンプルなソリューション!
アダムフリーマン

3

これが投稿されているのは久しぶりですが、iOS 7.1ではいくつかの点が変更されています。

これまでのところ、アプリを開発している場合、Appleによって認識されている有効なSSL証明書が必要です。そうでない場合、iDeviceにエラーメッセージが表示されます。自己署名証明書はもうありません。ここでリストを参照してください:

http://support.apple.com/kb/ht5012

さらに、ここにいる場合は、テスト環境または開発環境で、iDeviceに(httpsサーバーへの)名前を解決させようとしていることを意味します。

優れたアプリケーションであるsquidを使用する代わりに、dnsmasqのような非常に基本的なDNSサーバーを実行するだけで済みます。名前解決の最初の行としてホストファイルを使用するので、www.blah.comが192.168.10.10であると言って、基本的にそこでiDeviceをだますことができます。

設定ファイルは3〜4行と簡単で、必要に応じて内部DHCPサーバーを設定することもできます。

これが私のものです:

listen-address = 192.168.10.35

ドメインが必要

偽のプライベート

no-dhcp-interface = eth0

local = / localnet /

もちろん、そのDNS(私の場合は192.168.10.35)を使用するようにiDeviceのネットワークを構成するか、適切に構成した後、そのサーバーからDHCPの使用を開始する必要があります。

さらに、dnsmasqが内部で名前を解決できない場合は、通常のDNSサーバー(8.8.8.8など)を使用して名前を解決します。非常にシンプルでエレガントで、社内でのiDeviceアプリのインストールに関する私の問題を解決しました。

ところで、通常のMac(OS X)での名前解決に関する多くの問題も解決します。

さて、私の怒り:流血のアップル。デバイスを安全にすることは、オペレーティングシステムまたは開発者を去勢することを含むべきではありません。


カルロス、ありがとう。問題は、Pulse SecureのモバイルVPN製品を使用してサーバーをテストすることです。これらは屋外では利用できません。したがって、新しいPROD証明書をテストする場合は、iPadをテストサーバー(PROD証明書がインストールされている場所)に移動する必要があります。しかし、www.prod ...... comというURLを使用します。そのため、これまでのところ、このシナリオに対する解決策は見つかりませんでした。:0(
codeslapper 2017

2

ホスト名を自由に選択できる場合は、dyndns.orgなどの動的DNSサービスにホストを追加するだけです。その後、iPadの通常の解決メカニズムを使用してアドレスを解決できます。


2

iPhoneモバイルプロキシジェネレーターを使用して、モバイルインターネット(3G)経由でiPhoneまたはiPadeのプロキシサーバーを利用することもできます。

http://iphonesettings.net/mobileproxygenerator.php

キャリアのAPN(必要に応じてAPNユーザー名/パスワードを使用)と通過するプロキシサーバーを入力し、[生成]をタップするだけです


2
読者の注意:この回答のWebサイトは、多くの企業のインターネットファイアウォールソリューションによってマルウェアとしてリストされています。信頼できないプロキシサーバーを介してすべてのトラフィックを送信すると、送信されたすべての情報が公開されます。あなたはか本当に信頼しますかiphonesettings.net
ErikE

-2

それにアクセスする必要があります/private/etc/。できません。


@OmG、質問は「それはまったく可能ですか」であり、彼/彼女のコメントは実際に質問に正確に答えています。コメントのコピー/貼り付けを停止して、自分の評判を高めます。
Daniel Smith

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.