並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 83件

新着順 人気順

"Network Namespace"の検索結果41 - 80 件 / 83件

  • Docker/Kubernetesを扱う上で必要なネットワークの基礎知識(その1) - sagantaf

    はじめに DockerやKubernetesを使ってマイクロサービスなどを構築する時には、必ずネットワーキングが必要になります。そのために必要な基礎知識をまとめておきました。 テーマは、 階層構造 プロトコルの詳細と通信の流れ MACアドレスとIPアドレス ネットワーク機器の種類 VLAN iptables network namespace です。 その1では、「ネットワーク機器の種類」までをまとめています。 ※DockerやKubernetesの話は出てきません。 ネットワークの階層構造 OSI参照モデル TCP/IP階層モデル プロトコルの詳細と通信の流れ L7とHTTP HTTP リクエストの種類とデータの中身 通信経路の確保 L4とTCP TCP ソケットの生成 データ保証と再送制御 フロー制御(流量制御) L3とIP IP TTL(Time To Live) L2とEthern

      Docker/Kubernetesを扱う上で必要なネットワークの基礎知識(その1) - sagantaf
    • <コンテナNWの課題と展望>Kubernetes環境のネットワークの基礎を学ぶ|BUSINESS NETWORK

      近年、大きな注目を集めている「コンテナ」と、そのオーケストレーションツール「Kubernetes」。ここでは、コンテナ環境におけるネットワークの課題や解決技術、そして今後の展望を説明する。 Dockerにおけるネットワークまず、広く使われているコンテナ化技術「Docker」を例として、コンテナネットワークの概要を説明する。コンテナは一般的にLinux OS上で起動する。このホストは「コンテナホスト」と呼ばれ、各コンテナはコンテナホスト内の論理的なネットワークに接続されている。 具体的には、コンテナホスト内に論理ブリッジ(Linuxブリッジ)が存在し、各コンテナは、LinuxのNetwork Namespace機能により隔離され、仮想ネットワークインターフェース(veth)でこのブリッジに接続される。これによって、コンテナ内のプロセスから見ると、自分専用のネットワークインターフェースがあるよ

        <コンテナNWの課題と展望>Kubernetes環境のネットワークの基礎を学ぶ|BUSINESS NETWORK
      • Kubernetesネットワーク入門 | ネットワンシステムズ

        ライター:奈良 昌紀 通信事業者のデータセンターにおいてネットワーク・サーバー運用を経験した後、ネットワンシステムズに入社。帯域制御やWAN高速化製品担当を経て、2008年から仮想化関連製品を担当。現在は主にクラウド、仮想インフラの管理、自動化、ネットワーク仮想化を担当。 本記事は business network.jp に寄稿した「<コンテナNWの課題と展望>Kubernetes環境のネットワークの基礎を学ぶ」の内容を再編・要約したものです。詳細はこちらもご参照ください。 こちらの記事ではKubernetesのストレージ機能に関して説明しましたが、今回はKubernetesのネットワーク部分に焦点を当ててご説明します。 Dockerにおけるコンテナネットワーク Kubernetesのネットワークを説明する前に、Dockerにおけるコンテナのネットワークに関して整理します。コンテナが起動す

          Kubernetesネットワーク入門 | ネットワンシステムズ
        • Kubernetes の Probe の仕組みと考慮点

          Kubernetes 1.26 時点の話で、以降のマイナーバージョンで改善されている可能性があります。 Kubernetes には、ワークロードの正常性を確認するための Probe という仕組みがあり、Liveness / Readiness / Startup Probe が用意されています。kubelet (Kubernetes のノード上で動作するエージェント) は、ワークロードに対して TCP Socket / HTTP GET / gRPC / Exec の中から指定されたチェックを定期的に実行します。 それぞれの Probe の特性を理解して使い分けないとサービスに影響することがあります。本記事では、Probe の仕組みと考慮すべき点について紹介します。 Probe の仕組み Exec と TCP Socket / HTTP GET / gRPC の Probe の仕組みは異な

            Kubernetes の Probe の仕組みと考慮点
          • Debugging MySQL/MariaDB (1): Build and Test - nayuta-yanagisawa's blog

            MySQL/MariaDB をデバッグする実践的方法を解説する。この記事ではデバッグを行うための準備を行い、具体的なデバッグの方法については (2) 以降の記事で説明する予定である。なお、一連の記事すべてにおいて MySQL 8.0.24 および MariaDB 10.5.9 を前提として解説する。 Building MySQL/MariaDB MySQL/MariaDB のそれぞれについて、ビルドする方法を簡単にまとめておく。以下の記述は筆者の開発環境 (Vagrant Box bento/ubuntu-20.04) を前提としたものである。 MySQL Boost 同梱版のソースを公式からダウンロードし展開する。GitHub から取得すると Boost のバージョンを合わせるのがかなり面倒なので、Boost 同梱版を使うのが吉である。 wget https://dev.mysql.co

              Debugging MySQL/MariaDB (1): Build and Test - nayuta-yanagisawa's blog
            • Linux の Network Namespace と Keepalived でルータの冗長化を試す - CUBE SUGAR CONTAINER

              今回は「Linuxで動かしながら学ぶTCP/IPネットワーク入門」に載せようか悩んで、結局は載せなかった内容のひとつを扱う。 Linux の Network Namespace を使って作った 2 台のルータを、Keepalived (VRRP) を使ってホットスタンバイで冗長化する構成を組んでみる。 つまり、2 台のうち 1 台のルータに障害が起きても、残りの 1 台が役務を引き継いで通信を継続できる状況を再現する。 使った環境は次のとおり。 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.4 LTS Release: 20.04 Codename: focal $ uname -srm Linux 5.4.0-107-generic aarch

                Linux の Network Namespace と Keepalived でルータの冗長化を試す - CUBE SUGAR CONTAINER
              • CVE-2021-22555: Turning \x00\x00 into 10000$

                CVE-2021-22555: Turning \x00\x00 into 10000$ Andy Nguyen (theflow@) - Information Security Engineer CVE-2021-22555 is a 15 years old heap out-of-bounds write vulnerability in Linux Netfilter that is powerful enough to bypass all modern security mitigations and achieve kernel code execution. It was used to break the kubernetes pod isolation of the kCTF cluster and won 10000$ for charity (where Goog

                • Graceful shutdowns with ECS | Amazon Web Services

                  Containers Graceful shutdowns with ECS Introduction Amazon Elastic Container Service (Amazon ECS) gives customers the flexibility to scale their containerized deployments in a variety of different ways. Tasks can be scaled-out to react to an influx of requests or they can be scaled-in to reduce cost. ECS also supports different deployment options, including rolling deployments, blue/green deployme

                    Graceful shutdowns with ECS | Amazon Web Services
                  • nmcliコマンドの基礎 - えんでぃの技術ブログ

                    本記事で紹介すること nmcliコマンドの基本的な使い方を紹介します。 nmcliコマンドによるIPアドレス設定、ゲートウェイ設定、DNSクライアント設定などの応用的なコマンド例については、以下の記事で紹介します。 endy-tech.hatenablog.jp ipコマンドについては、本記事の後半で概要のみ紹介します。 本記事で紹介すること nmcliの概要 (参考) NetworkManager関連ツール DeviceとConnection Deviceの説明 Connection の説明 Device と Connection のまとめ nmcli コマンドの基本的な使い方 コマンドのヘルプ helpサブコマンドを利用する方法 bash-completionを利用する方法 manを参照する方法 設定確認 設定の変更/反映 Connection をDeviceから紐付け解除する Con

                      nmcliコマンドの基礎 - えんでぃの技術ブログ
                    • コンテナをサーバーレスでラクラク実行 〜 Azure Container InstancesとDocker CLIで実現 〜 | SIOS Tech. Lab

                      ◆ Live配信スケジュール ◆ サイオステクノロジーでは、Microsoft MVPの武井による「わかりみの深いシリーズ」など、定期的なLive配信を行っています。 ⇒ 詳細スケジュールはこちらから ⇒ 見逃してしまった方はYoutubeチャンネルをご覧ください 【5/21開催】Azure OpenAI ServiceによるRAG実装ガイドを公開しました 生成AIを活用したユースケースで最も一番熱いと言われているRAGの実装ガイドを公開しました。そのガイドの紹介をおこなうイベントです!! https://tech-lab.connpass.com/event/315703/ Azure Container Instancesとは?Azureが提供するサーバーレスコンテナプラットフォームです。普通コンテナを使う場合は、Dockerを自分のPCなり、どこかのサーバーなりにインストールして、そ

                        コンテナをサーバーレスでラクラク実行 〜 Azure Container InstancesとDocker CLIで実現 〜 | SIOS Tech. Lab
                      • unshareコマンドでLinuxのNamespaceに入門 - Foreverly

                        Namespaceはコンテナで使われている技術の一つで、コンテナを理解深めるために知っておくとよいので調べてみた。 どんな使われ方をしているかというと、 例えばPID namespaceはPIDの number spaceを隔離する。 これは同じホスト上で実行されている2つのプロセスが同じPIDを持つことができるということになる。 namespaceがなくて隔離されてないとコンテナAがコンテナB、C、Dなどに filesystemのunmountやホスト名の変更、NWインターフェースの削除など できたりしてしまうので、必ず他のコンテナのプロセスがみれないようにする。 Namespace Kernel/OSのリソースで、物理リソースは制限しない(cgroupsでする)が、 以下の項目についてNamespaceを分離する。 namespaceを分離した環境では、許可されたリソースしか見えなくな

                          unshareコマンドでLinuxのNamespaceに入門 - Foreverly
                        • iproute2 の ip-netns(8) を使わずに Network Namespace を操作する - CUBE SUGAR CONTAINER

                          今回は、iproute2 の ip-netns(8) を使わずに、Linux の Network Namespace を操作する方法について書いてみる。 目的は、namespaces(7) について、より深い理解を得ること。 使った環境は次のとおり。 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20.04 DISTRIB_CODENAME=focal DISTRIB_DESCRIPTION="Ubuntu 20.04.2 LTS" $ uname -r 5.4.0-1043-gcp もくじ もくじ 下準備 前提知識 unshare(1) / nsenter(1) / mount(8) を使って操作する unshare(2) / setns(2) / mount(2) を使って操作する 参考 下準備 あらかじめ、必要なパッ

                            iproute2 の ip-netns(8) を使わずに Network Namespace を操作する - CUBE SUGAR CONTAINER
                          • How a Kubernetes Pod Gets an IP Address | Ronak Nathani

                            One of the core requirements of the Kubernetes networking model is that every pod should get its own IP address and that every pod in the cluster should be able to talk to it using this IP address. There are several network providers (flannel, calico, canal, etc.) that implement this networking model. As I started working on Kubernetes, it wasn’t completely clear to me how every pod is assigned an

                              How a Kubernetes Pod Gets an IP Address | Ronak Nathani
                            • Amazon ECS on AWS Fargate で設定可能な Linux パラメータの追加 | Amazon Web Services

                              Amazon Web Services ブログ Amazon ECS on AWS Fargate で設定可能な Linux パラメータの追加 この記事は Announcing additional Linux controls for Amazon ECS tasks on AWS Fargate (記事公開日 : 2023 年 8 月 9 日) の翻訳です。 導入 Amazon Elastic Container Service (Amazon ECS) タスクは、同時かつ同一の AWS Fargate インスタンスまたは Amazon EC2 コンテナインスタンスにスケジューリングされる、1 つ以上のコンテナで構成されます。コンテナでは Linux namespace を使用してワークロードの分離を実現するため、Amazon ECS タスク内で複数のコンテナが一緒にスケジューリングさ

                                Amazon ECS on AWS Fargate で設定可能な Linux パラメータの追加 | Amazon Web Services
                              • SRv6をもう少し深堀してみよう。

                                はじめに 前回のコラムでは、「セグメントルーティング(Segment routing)」の基本的な概要について説明しました。今回のコラムでは、IPv6ネットワークの上で構成されるSRv6(Segment Routing IPv6)について、少し詳しく内容を解説します。 今回は、SRv6サービスを実現するパケットヘッダーについて、詳しく観察してみます。ここでは、簡単のため、Ubuntu上にNetwork Namespaceを用いてモデルネットワークを構成し、SRv6処理を行うノードにおいて、ネットワーク処理スタックにおけるさまざまなNetfilter hookポイントで、Python Scapyパッケージを用いて、疎通するパケットを取得、そのヘッダーについて、観察します。また、参考として、MPLS IPv6トンネルとの比較もします。 次に、SRv6を用いてVPNを構成するために必要な設定を実

                                  SRv6をもう少し深堀してみよう。
                                • Docker/Kubernetesを扱う上で必要なネットワークの基礎知識(その2) - sagantaf

                                  はじめに DockerやKubernetesを使ってマイクロサービスなどを構築する時に必要になるネットワークの基礎知識まとめ、その2です。 その1は下記です。 sagantaf.hatenablog.com 今回のその2では、 VLAN network namespace iptables について記載しています。 VLAN ポートVLAN タグVLAN VXLAN Network Namespace NetworkNamespaceとは 独自netnsと外部とで通信するためには 実際にbridgeを作成し、独自ns間の通信を試してみる bridgeの作成 netnsの作成 vethペアの作成 bridge0にveth0_hostを割り当て netns0にveth0_containerを割り当て IPアドレスとデフォルトゲートウェイの設定 通信テスト iptables おわりに VLAN

                                    Docker/Kubernetesを扱う上で必要なネットワークの基礎知識(その2) - sagantaf
                                  • ネットワーク勉強まとめ

                                    TODO 『Linuxで動かしながら学ぶTCP/IPネットワーク入門』 DHCPの章をやる NATの章をやる Network Namespaceの勉強ネタ: https://blog.amedama.jp/archive/category/Network Namespace vlan: https://blog.amedama.jp/entry/linux-bridge-8021q-vlan vxlan: https://blog.amedama.jp/entry/2020/02/08/012513 Network Namespaceを利用してbridgeを作成する: https://github.com/momijiame/linux-tcpip-book/blob/2nd-edition/commands/4.ethernet/bridge.txt シェルでCNIを自作する: http

                                      ネットワーク勉強まとめ
                                    • 非公式翻訳:eBPF Superpowers (CNDT2022 Keynote)

                                      CloudNative Days Tokyo 2022 Day2が開幕しました。本日のキーノート枠では、Isovalent社のTechnical Community AdvocateであるTracy P Holmes氏から、クラウドネイティブな世界におけるeBPFの強力さについてお話いただきます。 日本語の字幕を用意するのが難しく、Mediumで同氏のセッションの書き起こしと日本語翻訳をご用意しました。セッション視聴のお供に、また後から見返すためにもお使いください! (なお、本書き起こしと翻訳は非公式なものとなります。正確な内容を保証するものではなく、あくまでセッション視聴の参考とお考えください) 翻訳・編集:Yoshiki Fujiwara @antiberial, Kohei Ota @_inductor_, Hayakawa Yutaro @YutaroHayakawa, Masat

                                      • 技術書典10で「Rustで始めるTCP自作入門」を頒布してます - 電気ひつじ牧場

                                        どんな本か 最終的に出来上がるもの 対象読者について 各章について 1章 2章 3章 4章 頒布先リンク 書籍で解説しているソースコード おわりに どんな本か Rustを使い,「TCPセグメントが1つ送信できる」という段階から「自作TCPを使って画像ファイルを送信できる」という段階まで少しずつTCPの実装を作成していく本です. 「Rustで始めるTCP自作入門」を技術書典10で販売しています!RustでTCP実装を作り,エコーサーバやファイルアップローダをその上で動かします.Rustで何か作りたい人,TCPの入門書を読んで中身が気になった人はどうぞ! 拡散していただけると喜びます! #技術書典 https://t.co/zOlDxBTTya pic.twitter.com/9Ln3VTWR1b— 電気ひつじ@技術書典10/Rustで始めるTCP自作入門 (@teru0x1) Decembe

                                          技術書典10で「Rustで始めるTCP自作入門」を頒布してます - 電気ひつじ牧場
                                        • 秒速でネットワーク作成 [veth peer] - サーバーワークスエンジニアブログ

                                          技術三課の手塚です。入社から半年が過ぎましたが、もっと長く在籍しているような感覚もあり、大変密度の濃い時間を過ごしています。 さて、本記事は秒速でネットワークを作成する方法です。 Network namespace(以下 netns) と veth peer で軽量な仮想ネットワークを作成します。 - 結果と手順をすぐ知りたい方 => まとめ - 時間はあるので詳しく見たい方 => 詳細 まとめ Linux 上に 2 ノード直結のネットワークを作成しました この設定に netns と veth peer を使用しました この手順を実行したところ、秒速でネットワーク作成が完了しました 構成図 [caption id="attachment_71865" align="alignnone" width="424"] 検証構成[/caption] 事前準備 root 権限でネットワーク変更を行う

                                            秒速でネットワーク作成 [veth peer] - サーバーワークスエンジニアブログ
                                          • TCP/IP&ネットワークコマンド入門 ──プロトコルとインターネット、基本の力[Linux/Windows/macOS対応]

                                            この本の概要 TCP/IP&ネットワークコマンドの解説書。『Linux×コマンド入門』(技術評論社,2021/04),『macOS×コマンド入門』(技術評論社,2020/4)の姉妹本です。 本書では,TCP/IP&ネットワークの今の基本を押さえ,ネットワークコマンドや各種ツールの基礎知識や作法を平易に解説。コマンドやWiresharkなどのツールを使って,TCP/IPのしくみ&ネットワークの基本概念を手を動かして実際の動作を見ながら学べる点が特徴です。動作確認環境としてはLinux(Ubuntu)を中心に,Windows/WSL2,macOSに対応。コマンドラインがはじめての方でも試せるようにサポートサイトも用意しました。変わる基本,変わらない基本を広く初学者の方々へ。スマートフォン,Wi-Fi,無線通信をはじめとしたコンピューターネットワークの今を気軽に体感できる1冊です。 こんな方にお

                                              TCP/IP&ネットワークコマンド入門 ──プロトコルとインターネット、基本の力[Linux/Windows/macOS対応]
                                            • All about ISTIO-PROXY 5xx Issues

                                              What is the Issue?In Hotels.com™ (part of Expedia Group™) we recently implemented an Istio Service mesh. The Istio service mesh sidecar injector automatically attaches an istio-proxy sidecar to every pod. Once all apps are enabled with istio-proxy sidecars, a common issue faced by many apps and services are HTTP 503/504 response errors for upstream service calls. These errors are generated by the

                                                All about ISTIO-PROXY 5xx Issues
                                              • Rootless containers with Podman: The basics | Red Hat Developer

                                                As a developer, you have probably heard a lot about containers. A container is a unit of software that provides a packaging mechanism that abstracts the code and all of its dependencies to make application builds fast and reliable. An easy way to experiment with containers is with the Pod Manager tool (Podman), which is a daemonless, open source, Linux-native tool that provides a command-line inte

                                                  Rootless containers with Podman: The basics | Red Hat Developer
                                                • network namespaceで遊ぶ

                                                  network namespaceとは Linuxに備わっているnetwork namespace機能を用いることで、IPに関する処理を1台のLinuxの中で複数に分割することができます。ネットワーク機器でいうところのVRF(Virtual Rouring and Forwarding)に近いことができます。 network namespaceを使うことで、Linux 1台だけで複数台の機器をエミュレートできるのでいろいろ遊べそう。 構成図 作ってみるネットワークはこんな感じ。 ルータ2台の両端に端末があるだけのthe simpleという構成。 物理NW構成図 論理NW構成図 作成 network namespace(≒仮想ノード)作成 ip netns addでnetwork namespeceを作成します。root権限で実行する必要があります。 先の物理NW図で箱が4個あるとおり、4個

                                                    network namespaceで遊ぶ
                                                  • WireGuard on Kubernetes

                                                    (See comments on Hacker News.) WireGuard was first introduced in Linux kernel 5.6, but Ubuntu 20.04 LTS includes a backport in its 5.4 kernel. This means that if your Kubernetes nodes are running Ubuntu 20.04 LTS or later, they come with WireGuard installed as a kernel module that will automatically load when needed. If your cluster permits to you to set CAP_NET_ADMIN on containers in pods, you ca

                                                      WireGuard on Kubernetes
                                                    • The container orchestrator landscape [LWN.net]

                                                      Did you know...?LWN.net is a subscriber-supported publication; we rely on subscribers to keep the entire operation going. Please help out by buying a subscription and keeping LWN on the net. Docker and other container engines can greatly simplify many aspects of deploying a server-side application, but numerous applications consist of more than one container. Managing a group of containers only ge

                                                      • Enhance Kubernetes Security with OPA Gatekeeper | メルカリエンジニアリング

                                                        Enhance Kubernetes Security with OPA Gatekeeper #Advent Calendar #Docker #Kubernetes #Mercari #Microservices #Security Author: IkedaMorito The 22nd day’s post of the Mercari Advent Calendar 2020 is brought to you by @moricho, a Software Engineer Intern from the Microservices Platform Infra team. Introduction At Mercari, we run our microservices on GKE (Google Kubernetes Engine). As the engineering

                                                          Enhance Kubernetes Security with OPA Gatekeeper | メルカリエンジニアリング
                                                        • 手を動かして学ぶネットワーク実験環境入門 - mh_mobileのブログ

                                                          これは、「フィヨルドブートキャンプ Part 2 Advent Calendar 2021」25日目の記事です。 adventar.org adventar.org はじめに 自作するネットワーク環境の構成 仮想環境(Linux VM)の準備 Multipassを使った仮想環境の準備 HomeBrewでインストール UbuntuのVMの起動 UbuntuのVMにログイン IPフォワーディングの有効化 Network Namespaceを使ったネットワーク環境の構築 Dockerのインストール スクリプトの構築手順 Network Namespaceの作成 仮想インターフェースの作成 仮想インターフェースをNetwork Namespaceに割り当て ブリッジの作成 仮想インターフェースの有効化 仮想インターフェースにIPアドレスやルーティングの割り当て ルーターのIPフォワーディングの有効

                                                            手を動かして学ぶネットワーク実験環境入門 - mh_mobileのブログ
                                                          • 第3回 Kubernetesのネットワーク~クラスタ環境でコンテナネットワークを構築する方法~

                                                            Dockerコンテナネットワーク Kubernetesコンテナネットワークに焦点を当てる前に、Dockerコンテナネットワークの構成を整理しましょう。 ※ここでは、もっともスタンダードなBridge形式について説明します。 Dockerネットワークを構成する、4つの重要な技術 Dockerのネットワーク構成を知るうえで、欠かせない4つの技術が存在します。 仮想ブリッジ Dockerコンテナ同士をつなぐための仮想的なブリッジです。物理L2スイッチと同じ振る舞いをします。Dockerの場合、「docker0」という名前で登場します。 veth vethはVirtual Ethernet Deviceの略、つまり仮想ネットワークインターフェース(仮想NIC)のことです。vethは必ずペア(veth、veth peer)で作成され、ペア間で通信が可能です。 Network Namespace(ne

                                                            • ゼロからはじめる実践 Kubernetes セキュリティ(3) コンテナ技術の基礎(1)「カーネルの分離 namespace」

                                                              本連載では、エンタープライズシステムでコンテナ/Kubernetesを活用した業務システムを開発・運用するエンジニアに向けて、知っておくべきKubernetesセキュリティの基礎知識、Microsoftが提供するパブリッククラウド「Azure」を使ったクラウドでのKubernetesセキュリティ対策のポイント、気を付けておきたい注意点などの実践的なノウハウを紹介します。 今回より、コンテナセキュリティの基礎となる、以下のコンテナ技術について3回に分けて説明します。 カーネルの分離 namespace リソースの分離 cgroup namespaceとcgroupで下から見るKubernetes 初回となる今回は、カーネルの分離を実現するために利用されているnamespaceを取り上げます。 コンテナはOSを論理的に分割し、隔離された空間でアプリケーションを動作させる技術です。したがって、よ

                                                                ゼロからはじめる実践 Kubernetes セキュリティ(3) コンテナ技術の基礎(1)「カーネルの分離 namespace」
                                                              • Top 15 Kubectl plugins for security engineers

                                                                Let’s dig deeper into this list of Kubectl plugins that we strongly feel will be very useful for anyone, especially security engineers. Stern plugin RBAC-tool Cilium Plugin Kube Policy Advisor Kubectl-ssm-secret Kubelogin Kubectl-whisper-secret Kubectl-capture Kubectl-trace Access-matrix Rolesum Cert-manager np-viewer ksniff Inspektor-Gadget Kubernetes, by design, is incredibly customizable. Kuber

                                                                  Top 15 Kubectl plugins for security engineers
                                                                • Flipping Pages: An analysis of a new Linux vulnerability in nf_tables and hardened exploitation techniques

                                                                  This blogpost is the next instalment of my series of hands-on no-boilerplate vulnerability research blogposts, intended for time-travellers in the future who want to do Linux kernel vulnerability research. Specifically, I hope beginners will learn from my VR workflow and the seasoned researchers will learn from my techniques. In this blogpost, I'm discussing a bug I found in nf_tables in the Linux

                                                                  • DockerのDの字も分からない状態を抜け出すためにやって良かったことをまとめてみる - Qiita

                                                                    概要 Dockerを触っていく上で、何を勉強したら良いかで行き詰まることが多かったので、勉強していて特に役に立ったな、と思ったものを備忘録がてら整理してみます。 対象読者 Dockerに入門したはいいけれど、インフラもLinuxも全然わからん、でも何とかしたい、というレベルの話が中心となっています。 k8sまで踏み込んだり、Dockerをバリバリ実務で使いこなすためのベストプラクティスなどなど、深い部分は対象外としています。むしろ、そういうのがあったら読みたいです。 また、本記事では、Webアプリの実行環境をDockerで構築できるようになるために必要な知識にフォーカスしています。そのため、データベースを利用した簡単なWebアプリをつくった経験があると、Dockerを勉強するモチベーションが高まるかもしれません。 前置き 1年ほど前に、ふとしたきっかけで、Dockerやるかと思い立ちます。

                                                                      DockerのDの字も分からない状態を抜け出すためにやって良かったことをまとめてみる - Qiita
                                                                    • Software Design 2021 年 4 月号 Fedora CoreOS とセキュリティのお蔵入りネタ - 赤帽エンジニアブログ

                                                                      Red Hat で OpenShift のコンサルタントをしている橋本です。 今回は Software Design 2021 年 4 月号に掲載予定だったものの、紙面の都合でカットしたトピックをご紹介します。 もともとは Fedora CoreOS とセキュリティをテーマに、ホスト OS や OKD におけるセキュリティの機能を紹介する予定でしたが、最終的に 20 ページになり、7 ページまで減らす必要があったため、ここでは次のテーマを掲載します。 NIST SP 800-190 におけるセキュリティの範囲は? Multus CNI プラグインにどれを選ぶ? Linux カーネルを用いるコンテナ技術 rpm-ostree による OS のバージョン管理 Ignition によるシステムの初期化 NIST SP 800-190 におけるセキュリティの範囲は? 具体的にコンテナやコンテナ基盤

                                                                        Software Design 2021 年 4 月号 Fedora CoreOS とセキュリティのお蔵入りネタ - 赤帽エンジニアブログ
                                                                      • criu restoreを非特権コンテナから呼ぶことはできるか - sometimes I laugh

                                                                        CRIUによるプロセスのリストアには複数のcapabilityが必要であり、コンテナ内部で行うためには--privileged相当で起動された特権コンテナでなければいけません。例えば、TCP connection repairにCAP_NET_ADMINが必要なのは明らかですが、もっと単純なプロセスであれば非特権コンテナでもリストアできるのでは...?と考えたのが事の始まりです。 背景 仕事で面倒を見ているRailsアプリの起動が遅いという問題がありました。起動が遅いとさまざまな弊害があるのですが、その一つにオートスケールが間に合わないというのがあります。 AWS FargeteやGoogle Cloud Runといった現代的なサーバーレスソリューションでは、ひとつひとつのコンピューティングリソースは小さく、リクエスト数の増加に応じて水平にスケールします。このようなアーキテクチャでは、コン

                                                                          criu restoreを非特権コンテナから呼ぶことはできるか - sometimes I laugh
                                                                        • Network Namespaceを使ってLinuxのルーティングテーブルを分離させる - Qiita

                                                                          はじめに わかった風な文章ですが、Network Namespaceやsystemd、PIDファイルの使い方など、色々と初めてのことなので、間違ってるかもしれません。ミスがあれば指摘いただけると幸いです。 Linuxのルーティングテーブルについて 複数のNICを搭載しているLinuxでは、通常、すべてのNICが一つのルーティングテーブルに乗っています。 Network Namespaceを使うことで、ネットワーク機器でいう所のVirtual Router(VRF)のように、一台のホスト内に複数のルーティングテーブルを定義し、NIC毎のルーティングテーブルを分離させる事ができます。 メリット それぞれのNetwork Namespace上のトラフィックは完全に分離されます。(vethなど、内部でnamespace間を接続する技術を使わない限り。) 今回の目的 検証用ネットワークは、ルータやス

                                                                            Network Namespaceを使ってLinuxのルーティングテーブルを分離させる - Qiita
                                                                          • Linux でリンクアグリゲーション (LAG) を試してみる - CUBE SUGAR CONTAINER

                                                                            リンクアグリゲーションは、複数のネットワークインターフェイスを束ねて扱う技術の総称。 たとえば、2 本のイーサネットを束ねて冗長化することで 1 本に障害が起こってもサービスを提供し続けることができる。 あるいは、フレームをロードバランスすることで単一のイーサネットよりもスループットを向上させる用途でも用いられる。 今回は Linux のリンクアグリゲーションの実装であるボンディング (Bonding) を Network Namespace と共に使ってみよう。 使った環境は次のとおり。 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=22.04 DISTRIB_CODENAME=jammy DISTRIB_DESCRIPTION="Ubuntu 22.04.1 LTS" $ uname -srm Linux 5.15.0

                                                                              Linux でリンクアグリゲーション (LAG) を試してみる - CUBE SUGAR CONTAINER
                                                                            • SSH越しにWiresharkでパケットキャプチャ

                                                                              はじめに network namespace間を流れるパケットをキャプチャしたいときにどうすればいいでしょうか? 試してみます。 tcpdumpで取得 前の記事でやっているようにip netns execコマンドを使うことでnetwork namespace内のパケットをtcpdumpで取得することができます。 以下は"router1" network namespaceの"e1"インターフェイスのパケットをコンソールに出力する方法。 -iはインターフェイス名を指定(必要) -l(小文字のエル)は出力を1行ごとにフラッシュ(必要) 普通にtcpdumpする時(ip netns execなしの時)はコンソールに出力するのでline buffered(1行ごとに出力)になりパケットが1個届くたびに画面に出力されるのですが、ip netns exec内でtcpdumpするとバッファリングされるの

                                                                                SSH越しにWiresharkでパケットキャプチャ
                                                                              • Optimizing Magic Firewall’s IP lists

                                                                                Magic Firewall is Cloudflare’s replacement for network-level firewall hardware. It evaluates gigabits of traffic every second against user-defined rules that can include millions of IP addresses. Writing a firewall rule for each IP address is cumbersome and verbose, so we have been building out support for various IP lists in Magic Firewall—essentially named groups that make the rules easier to re

                                                                                  Optimizing Magic Firewall’s IP lists
                                                                                • Kubernetes Ephemeral Containers and kubectl debug Command

                                                                                  Containers 101: attach vs. exec - what's the difference?Why and How to Use containerd From Command LineDocker: How To Extract Image Filesystem Without Running Any ContainersKiND - How I Wasted a Day Loading Local Docker ImagesDon't miss new posts in the series! Subscribe to the blog updates and get deep technical write-ups on Cloud Native topics direct into your inbox. You can find a Russian trans

                                                                                    Kubernetes Ephemeral Containers and kubectl debug Command