- ベストアンサー
ゲストOSのネットワーク構成ファイルを設定してIPアドレスを変更する方法について
- ゲストOSのネットワーク構成ファイルを設定すればIPアドレスを変更できるか?他の方法はあるか?
- 仮想マシン上のゲストOSでやられサーバーをスキャンするためにIPアドレスを変更する方法はあるか?
- ゲストOSのネットワークがごちゃごちゃしていてやられサーバーをスキャンするためにはどうすればいいか?
- みんなの回答 (11)
- 専門家の回答
質問者が選んだベストアンサー
>そしてありがとうございます。 気にしませんって! どうしてもだめなら、環境聞いて同じ構成試そうかな~ 位思ってはいたのでね。 ただ、質問者さんなら、そこまで行く前に解決するだろうなと 思ってたので、ま~いっか(投げやりなw)で 止めてましたわ。。 ひとまず、ゴールは近いのは感じるので、 ファイトっす! &暇つぶしなら付き合いまっせ(w)
その他の回答 (10)
- AsarKingChang
- ベストアンサー率46% (3467/7474)
>─$ telnet 127.0.0.1 80 >Trying 127.0.0.1... >telnet: Unable to connect to remote host: Connection refused これ通常Apacheですよ^^ 80はSSLなしの接続、443がSSLあり。 なので、ポートが開いていないね!をチェックするのにも使える。 時と場合により、開いてるか?より開いてしまってるか? の方が、重要チェックになりますからね。 (普通はnetstatで調べるけど)
お礼
回答ありがとうございます。 たった今ですが、インストールしたやられサーバーの dockerfileを開きまして、見た所、Listenアドレスとポートの設定が見つかりました。 解決しそうです。 色々お手数かけて申し訳ありませんでした、そしてありがとうございます。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
おまけ~(おまけが多くてごめんね!) ネットのさ~ 私なんて、パーフェクトな知識だとか、極めてた!だなんて 思ってないし、私自身、もっと勉強したいな~って 思ってるわけだけど。 設定とかのほかの人が書いた、サイトの情報見てて 時々思うのね^^ Q.なんとかかんとかのトラブルが起きた。 対処法は A.setenforce 0 これで解決 って人めっちゃいる^^ SELINUX止めればいいって、常識がある回答なのか。。。 Firewallの設定がうまくいかない?って質問に、 じゃ~Firewallを止めればいいね!って回答するようなもの。 ネットで、ちょっと調べものしたい時、これら見ると 結構ね^^ムッとする^^ 理想は、例外パターンの書き方と、例外を許可した場合の、 リスク&デメリットの説明をむしろ書いてほしいわ~ なんてね! 多分、質問者さん、私が言う事わかってくれるかも~ (あんまりサーバー系の人って、表にいないから^^ 今回「おらっワクワクすっぞ」みたいなね^^)
お礼
回答ありがとうございます。 なるほど、それはごもっともですね。 私も、ググれだのなんだの言われましたが ググっても出てこない情報があったりして その時初めて専門の方の力が必要になります。 後は書いてあっても専門的で専門家の方からの 助言がないと難しい問題とかですね。
補足
補足です。 ─$ telnet 127.0.0.1 80 Trying 127.0.0.1... telnet: Unable to connect to remote host: Connection refused ローカルホストの方は、接続できませんでした。 リモートホストに接続を拒否されましたと出ますね。 192.168の方なんですが、結局見つからないですね。 192.168.1.1はデフォルトゲートウェイだし。 接続はできたんですがね。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
>これで解る通り >127.0.0.1:8888だけリッスンしていたみたいです。 でしょw 以外に、localhost=127.0.0.1:portでだけ開いて いるってことに、気が付かないでハマる人は多いですよ。 なので、 telnet localhost 80 telnet 192.168.x.y 80 で、レスポンスがどうなるか?は確認必須ですね。 なお、telnet <localhost>と書けるのは、 /etc/hostsに localhostと書かれたら127.0.0.1にしろと 変換が書かれているためです。 なので、 oreore 192.168.x.y とかを追加すると ping oreore <- 実在しないDNSのはず これでも、実際には192.168.x.yをターゲットとするので、 これ便利ですよ~ だ・か・ら!IPを固定した方がいいよね? になるんです!。(やっていくうちに、たしかに~になりますよ)
- AsarKingChang
- ベストアンサー率46% (3467/7474)
>はい、firewall-cmdでやろうとしたのですが・・・。 Dockerとのことなので、Dockerが 127.0.0.1にだけListenしているってことはないですか? なのでまず、localhost=127.0.0.1の8888で ポートが開いてますか?を確認してみてください。 それで通信できるようなら次に、 192.168.x.yの現在のクラスCアドレスの8888で 通信テスト。 まずは、ここからですね。
お礼
今確認してみたところ、デフォルトゲートウェイの192.168.1.1にブリッジしているみたいです。 同じポートが開いていました。
補足
回答ありがとうございます。 少し解りづらくて済みませんが CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 0f89b5844610 crapi/crapi-web:latest "/bin/sh -c /etc/ngi…" 33 hours ago Up 35 seconds (healthy) 127.0.0.1:8888->80/tcp crapi-web 47e0e788d475 crapi/crapi-workshop:latest "/bin/sh -c /app/run…" 33 hours ago Up About a minute (healthy) crapi-workshop 0ed4e213b1c2 crapi/crapi-community:latest "/bin/sh -c /app/main" 33 hours ago Up About a minute (healthy) crapi-community 7457e3e0e4c4 crapi/crapi-identity:latest "/entrypoint.sh" 33 hours ago Up 2 minutes (healthy) crapi-identity 80b77fe3a988 crapi/gateway-service:latest "/app/server" 33 hours ago Up 2 minutes (health: starting) 443/tcp api.crapi.io 76bf8406660b crapi/mailhog:latest "MailHog" 33 hours ago Up 2 minutes (healthy) 1025/tcp, 127.0.0.1:8025->8025/tcp mailhog 5c2e7e8d477b mongo:4.4 "docker-entrypoint.s…" 33 hours ago Up 2 minutes (healthy) 27017/tcp mongodb 702918de97fa postgres:14 "docker-entrypoint.s…" 33 hours ago Up 2 minutes (healthy) 5432/tcp postgresdb これで解る通り 127.0.0.1:8888だけリッスンしていたみたいです。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
>どうしても192.168.1.3:8888番ポートが解放できないのですが どうやって開放をしようとしました? firewall-cmdですか?
お礼
はい、firewall-cmdでやろうとしたのですが・・・。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
>docker仕様 っていっても、基本同じですよ。 単にLinuxのサービスをコンテナ化しただけで、 使うノウハウは、サーバー立てるのと同じスキルが 必要ですし。ただ、Dockerの方が、外からコンテナが 見えにくいので、ちょっとやりにくいな~ってだけ。 中からだと、本物のLinuxっぽくしか見えませんし。 なので、それほど、区別する必要もないとは思うけど~。 VMの中で動いてるVMみたいなもんですからね^^ ちなみこちら、Fedoraですが、Dockerは内蔵されていて、 GUI側の管理ツール使うと、結構楽に管理できるっぽいです。 私CUIメインなので、これを使うことはなかったけどね^^ (ここは、予断系なので、ひとまず、ゴールに向かって レッツゴーでございます~) あと、外から192.168.x.yの時、そのままだと Firewallに蹴られるので、適切に穴あけを忘れず~ ではでは
お礼
回答ありがとうございます。 すみませんが、どうしても192.168.1.3:8888番ポートが解放できないのですが、ゲストOSでそのやられサイトを開く場合 どういう風に設定すればよいのでしょうか?
- AsarKingChang
- ベストアンサー率46% (3467/7474)
>IPが192から始まるやつだったので違うのかなーと思ったのですが。 それであってますよ!! ローカルエリアネットワークは、クラスCをお使いなんですね! 192.168.x.y これが、そのPCのアドレスですよ~ (実質末尾8ビットですが) 家の中からなら、例えばSSHなら ssh user@192.168.x.yでいいわけで。。 (SSHってユーザー名省略するとカレントユーザーを勝手に送るので、 無理してでも、ユーザー名は書いた方がいい!) 家の外からは、 グローバルIP→貴方の家のルーター→ 例えばポート22をその192.168.x.yに転送。 これで、外からもSSHが出来るようになりますよ~ なんですが~~~~~~~~~~~~ 外側ポートは22から移動しておいた方がいいです。 まじで、SSHアタッカーめっちゃくるんで^^ なので、ルーターでは例えば5000で受け付けて それを192.168.x.y:22に転送って感じにすれば、 外からはあくまで、5000番ポートなので、 総当たりされる数が桁違いに減りますよ。 後は、そこまで出来たら、 Dockerに接続したいサービスをLinux側で コンフィグ書いて転送するようにしたら。 完成~って感じで。 (もうゴール近いと思う。その雰囲気だと) で!!なんで、IPが。。。 192.168.x.yなのか?についてですが。 もし、そのPCにVMを2台立ち上げたとして、 どちらにもSSHを入れたらどうなります? グローバルIP:22はどっちをさせばいいの? っていうより、外から見えてるのはルーターであり ローカルエリアネットワークじゃないよね?って話。 だから、ルーターがいる ルーティングという経路を決めるのがルーターの仕事なので。 本来ルーターってのはISPにリンクアップするのが 仕事じゃないのだ~ ってことで、ビール買ってくる(支離滅裂~♪) 恐らく、質問者さんのスキルならもう、 解決近いですよ!まじで! いつも質問内容が難しすぎて 参加できてないくらいなので(笑)
お礼
回答ありがとうございます。 凄く貴重な意見を頂いて悪いのですが、あくまでdocker仕様なので、良く言えばdocker次第なのでAsarKingChangさんがおっしゃっているのは自力でやられサーバー構築みたいな感じですよね?、と言ったところですよね、多分(笑) 寧ろ私もついていくのがやっとですね(笑) でも非常に興味わきました、ありがとうございます。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
ごめ >フロントエンド > IPを持ってる数分サーバーを立てる。 これ、VM側にNIC、沢山立てるだけでも行けるので、 必ずしも、数分必要なわけじゃないのと、 80/443のみでもいいなら、NIC1つで、 Virtualhostを大量に書いてもいいですが。 こっちだと、メールサーバーがあるので、 一応、物理マルチにしてまして。 (全部MXプライオリティー1で!)
- AsarKingChang
- ベストアンサー率46% (3467/7474)
>うーん、loはあるんですが、enpXXのNICが表示されないんですよねー。 VirtualBOXのVM側アプライアンスのネットワーク設定を ブリッジにしてますか? デフォルトはホストと共有なので、固有IPはないですよ。 kalilinux こいつを使った事がないですが、 相当古い世代Linux2世代でも、ちゃんとネットワークは 動いているので、今のディストリなら、大抵大丈夫だとは 思いますけどね。今話してるのって、 Dockerの「外」ですよね。。 外で認識してないなら、中も当然ないので、 まずは、VM内のOSで2つ認識するようにするのが、 先でしょうね。 おまけ。 2つNICを認識できるようになったら、 DHCPやめて、メインルーターのDHCP貸し出し範囲を 狭めて、同一セグメント内の、貸し出し範囲「外」に IPを固定しちゃうことをお勧め! 毎回、VMマシン探すの面倒なのでね^^ nmcliか、sysconfig/network/...NICアダプタ名 で固定でOKです。 それを、 WinでもLinuxでも、Hostsに記載すれば、 「マシン名」だけでSSHつながるので、ウェィウェィですよ。 さらにおまけ! NTTの光ファイバーって最低2個のISPの同時接続が可能で、 お金払うと、一般回線でも5個までISP同時接続OKです。 なので、Linuxを複数立ち上げて。 例えば、 IP_A→ルーター→NATで立ち上げてるLinux_Aに転送 IP_B→ルーター→NATで立ち上げてるLinux_Bに転送 で、ドメインを適当に取って、IP_AもIP_Bも 同じドメインに登録~なんてやれば、ラウンドロビンで Linux_AとLinux_BがReverseProxyで、Dockerなり さらに別のVM Linuxに接続させれば、ローバラっぽくなります。 この時、おいしい??のは、Dockerなどを メンテしてるときは、レスポンスコードが503なので、 それをApacheで検出して、クライアントには メンテナンス中なんて送り返せば、 なんか^^プロっぽくなる(笑) で表壁で、VirtualHostにホスト名なしでの接続=IPベタ! をごみコンテンツに誘導して、ちゃんとしたホスト名が ある場合だけReverseProxyに誘導すれば、 ウジ虫のトラップにもなり、ログがすっきりしまっせ! こっちの家だと、 バックエンド MySQL Master/Slaveの2台VM構成。 コンテンツサーバーMaster/Slaveの2台VM構成。 フロントエンド IPを持ってる数分サーバーを立てる。 外部ネームサーバーにドメインAレコード DNSラウンドロビンで経路を設定。 (ってか、ラウンドロビンにCNAMEはないけど) 後は、ReverseProxyにプロキシリストを書いて コンテンツサーバー分記載したら、 それをフロントエンドサーバーにデプロイ。 Dockerはやったことはあるんですが^^ な~んか^^外からコンテナ触りにくい~ってのと。 バックアップしにくい! VMのアプライアンスって、全HDDに対して/dev/zeroを 書いてすぐ消す→これで未使用領域が0になる。 この状態でバックアップすると、0の部分が圧縮され HDDが500GB設定でも、実際の使った容量だけ バックアップできるので、結構便利(w) マシン多くなると、ぶっちゃけ、めっちゃだるいので。 大本でGitで管理しつつ、各VMちゃんで、pull で、デプロイコマンドで、適切なフォルダに移動 の繰り返しでメンテしてます~ (相当、話それた^^ごめ~ん)
補足
回答ありがとうございます。 >デフォルトはホストと共有なので、固有IPはないですよ。 あ~、そうでしたか!一応ブリッジ接続はしましたが IPが192から始まるやつだったので違うのかなーと思ったのですが。
- AsarKingChang
- ベストアンサー率46% (3467/7474)
ネットワークが、ホストと共有になってませんか? 試しにVM側ネットワークをブリッジにして再起動。 その後、起動したゲスト側から、ifconfigでIPを確認。 恐らく、DHCPでアドレスを入手したenpXXのNICと loである127.0.0.1の2つ認識されていると思うので、 これで、要件は満たしませんかね?
お礼
回答ありがとうございます。 うーん、loはあるんですが、enpXXのNICが表示されないんですよねー。 ifconfigで見てますけども。
補足
あ、ちなみに補足ですがdockerでやられサーバー立ててます。
お礼
ひとまず、IPアドレスの方は解決しましたが、 脆弱性が本に書いてある数ほど、見つかりませんでした。 ありがとうございました。