タグ

ブックマーク / knowledge.sakura.ad.jp (78)

  • macOS版cURLはcURLと証明書検証の仕様が異なる | さくらのナレッジ

    はじめに 2023年12月に「cURLの"--cacert"オプション利用時の挙動がmacOSLinuxで異なる」という内容のissueが立ち、2024年3月にcURLの開発者であるDaniel Stenberg氏が「THE APPLE CURL SECURITY INCIDENT 12604」というタイトルで記事を公開しました。 この記事では件に関する詳細の説明と検証、また独自の掘り下げを行い、macOScURLとオリジナルのcURLの違いについて解説します。ただし、件は明らかになっていない部分が多くあるため、記事には推測や仮説が含まれます。ご了承ください。 --cacertオプションにおけるmacOScURLとオリジナルのcURLの違い まずはDaniel Stenberg氏の記事で述べられた内容を元に、"--cacert"オプションにおけるmacOScURLとオリジナル

    macOS版cURLはcURLと証明書検証の仕様が異なる | さくらのナレッジ
  • terraform (plan|apply) in GitHub Actions | さくらのナレッジ

    はじめに さくらインターネット SRE室の久保です。 今日は「terraform (plan|apply) in GitHub Actions」というタイトルで発表させていただきます。 今日発表する内容は、画像で表すと上図のようになります。誰かがPull Requestを送ると、それをもとにGitHub Actionsを動かし、Terraformのplanやapplyを動かして、自動的にTerraform管理下にあるリソースを更新してくれる、そういう仕組みを作ったという話です。 terraform (plan|apply)を実行する際のポイント Terraformのplanとapplyを実行する際のポイントとして、まず各種秘匿情報、具体的にはAPIキーなどが必要になるので、実行結果をチーム内で共有してレビューするのが結構面倒です。何らかの方法でAPIキーを共有して使うにしても、あるいは各自

    terraform (plan|apply) in GitHub Actions | さくらのナレッジ
  • 30年前のパソコンってこんな感じ | さくらのナレッジ

    最近の若いプログラマと話をしていると、中学生の頃からプログラミングをしています、という人が結構います。物心ついたころからコンピュータとインターネットは普通に身の回りにあった、という世代がちゃくちゃくと社会に出てきているわけで、考えてみるとすごい話です。しかしながら、自分も振り返ってみると初めてパソコンに触れたのが30年前の中学生の頃だったし、やっぱりふつーなのかな、とも思います。 というわけで今回は、30年前にどんなパソコンを使っていたのかという話をしようと思います。 私が初めて触れたパソコンはNECPC-6001でした。すっかりパソコンに魅了されてしまった私は、誕生日に親を説得してPC-8001を買ってもらいました。なんで6001じゃなくて8001だったかというと、当時放送していたNHKの「マイコン入門」という番組にPC-8001が登場していたからです。当時のパソコンでやることといえば

    30年前のパソコンってこんな感じ | さくらのナレッジ
  • 社内のKubernetesクラスタ運用を効率化する基盤について | さくらのナレッジ

    はじめに こんにちは。 2022年の4月から、さくらインターネット株式会社に新卒入社し、7月よりSRE室という部署に配属されました、菅原大和(@drumato)と申します。 記事では、7月の配属から今日(記事執筆時点では2022/10/31)にかけての3ヶ月間、社内のKubernetesクラスタ運用状況を調査し、現状の課題を明確にした上で、社内のKubernetesクラスタ運用状況を改善する基盤の設計と開発に取り組んできましたので、その内容をご紹介します。 その過程で得られた知見や、今後必要になってくるであろう、不足している機能についても合わせて共有します。 また、プロジェクトの背景として、SRE室という部門の目的や今後実現したい世界観についてもお話しできればと思います。 記事の全体を通して、技術的な側面よりもプロジェクトの背景や目的を重点的にお伝えします。 プロジェクトの概要

    社内のKubernetesクラスタ運用を効率化する基盤について | さくらのナレッジ
  • のんびり学ぶ Figma 〜コンポーネント編〜 (1) | さくらのナレッジ

    このシリーズについて みなさんこんにちは。さくらインターネットでフロントエンド領域を担当している山田です。この連載では、フロントエンド開発を行っているメンバーが、開発に役立つ情報を半分趣味で不定期掲載していく予定です。 自分からは、近年人気のデザインツールである『Figma』の便利な情報をお伝えしたいと思います。デザイナーの方はもちろん、エンジニアの方にも興味を持っていただける機能がたくさん詰まったFigmaを紹介していきます。 Figmaのご紹介 チーム開発に適したデザインツール Figmaのメインの機能の一つはもちろんデザイン制作です。Figmaを使うことで、これまでのデザインツールでは難しかったWebアプリケーションやモバイルアプリケーションといった、よりダイナミックに画面が変化していくタイプのデザインを表現しやすくなりました。 中でも、複数人で同じデザインファイルを閲覧・編集可能な

    のんびり学ぶ Figma 〜コンポーネント編〜 (1) | さくらのナレッジ
  • CentOS Linux 8のEOLと対応策の検討 (前編) | さくらのナレッジ

    はじめに さくらインターネットの前佛と申します。「CentOS Linux 8のEOLと対応策の検討」というテーマで発表させていただきます。補足資料が下記のURLにあります。参考になると思いますので、併せてご覧ください。 https://bit.ly/osc22on-centos 発表の流れ 発表の流れとしては、まず一つ目は「CentOS 8は終わってます」って話です。そして実際どうしたらいいんだろうっていうところで、いくつかの選択肢を考えてみましょうとか、現実的にどうしましょうかっていう話ですね。あと、移行スクリプトが提供されてるものがありますので、それを使って今のCentOS 8の環境を別の環境に延命する方法もご紹介したいと思っています。 後半では、そもそもCentOSは今どんな状況にあるのかとか、第3の道としてコンテナを使った、クラウドネイティブに対応したアプリケーションの移行という

    CentOS Linux 8のEOLと対応策の検討 (前編) | さくらのナレッジ
  • WPScanによる、WordPressの脆弱性診断の始め方 | さくらのナレッジ

    WordPressセキュリティ診断ツール WPScan 近年、不正アクセスの増加により、セキュリティに対する関心も高まりつつあります。さくらインターネットでも Web改ざん検知サービス やSSLの契約数が伸びてきているようですが、それでもやはり不正アクセスは絶えないのが現状です。 狙われるのはメールパスワード、そして WordPress さくらのレンタルサーバのサポート経験上、しばしば目にする不正アクセスは、メールパスワードの漏洩による大量メール送信です。しかし、これは比較的対策が簡単です。意識してパスワードの管理を行っていれば、それでリスクの9割以上はなくなると思います。 次に多いのがWordPressの不正アクセスです。WordPressは世界の1/3のサイトで使われており、便利で人気がある反面、非常に狙われやすいアプリケーションでもあります。 さくらのレンタルサーバのコラムにも

    WPScanによる、WordPressの脆弱性診断の始め方 | さくらのナレッジ
  • 今すぐ使える分散DB​「エンハンスドデータベース(TiDB)」のご紹介​ | さくらのナレッジ

    はじめに この記事では、7月にリリースした、さくらのクラウドで使える機能の1つである「エンハンスドデータベース(TiDB)」というサービスについて紹介します。サービスの紹介に加えて、その裏で使っているTiDBという分散データベースの技術についても簡単に触れようかなと思っています。 分散データベース / NewSQLについて NewSQLとは さて、皆さんは「分散データベース」とか、あるいは「NewSQL」とか、そういった単語を耳にすることがあるでしょうか?ということでまずはこのお話をしたいと思います。 NewSQLと呼ばれているものはどういったものかといいますと、SQLをインターフェースとするという特徴を持っていて、データベース(例えばMySQLやPostgreSQLなど)と同じように強い整合性を持ち、トランザクションをサポートしていて、かつ分散データベース(分散型のリレーショナルデータベ

    今すぐ使える分散DB​「エンハンスドデータベース(TiDB)」のご紹介​ | さくらのナレッジ
  • 【AIアプリ開発の決定版】Colaboratory+VSCodeによる最小工数の機械学習環境構築手順の紹介 | さくらのナレッジ

    こんにちは! テリーです。先日NVIDIA GTCというイベントがありました。GPUテクノロジーカンファレンスの略です。NVIDIAが進めている最新の技術と商品を紹介しているため、AI、動画、音声、その他あらゆる高速コンピューティングのトレンドを理解することができます。年々紹介する分量が増えてきていましたが、今年は特に量が多かった印象です。 さて、機械学習エンジニアやストリーミングエンジニアの諸氏におかれましては、開発環境の維持コストに頭を悩ませている方も多いことでしょう。なぜなら、あまりにも技術の進歩が激しく、去年50万円も出して購入したGPUパソコンでさえ、今年の新商品に搭載されている機能が使えないということが毎年のように繰り返されているからです。最新のGPUとパソコンを渋々買い替えている人が多いと思いますが、セットアップも中古売却もめんどくさいです。なんとかならないでしょうか? 今回

    【AIアプリ開発の決定版】Colaboratory+VSCodeによる最小工数の機械学習環境構築手順の紹介 | さくらのナレッジ
  • 正規表現を学んでみませんか | さくらのナレッジ

    それぞれの意味については使っているうちに自然と身につくかと思います。無理に急いで丸暗記しなくても良いです。 ほかにもたくさんあります。また、使用するツールやプログラム言語によって異なる場合があります。 実践 ディレクトリだけを一覧表示 例えば /etc 以下のファイルを一覧で表示させ、その中からディレクトリ(フォルダ)であるものを表示させたい場合、以下のようにします。 % ls -l /etc | grep '^d' 実行結果(例) % ls -l /etc | grep '^d' drwxr-xr-x 2 root root 4096 Apr 11 06:01 ImageMagick-6 drwxr-xr-x 1 root root 4096 Apr 11 06:02 alternatives drwxr-xr-x 1 root root 4096 Apr 11 06:02 apache

    正規表現を学んでみませんか | さくらのナレッジ
  • Docker Compose入門 (4) ~ネットワークの活用とボリューム~ | さくらのナレッジ

    これまでのDocker Compose入門は、Docker Compoesの紹介に始まり(第1回)、簡単なウェブサーバを起動する方法(第2回)、ネットワークの理解を深める方法(第3回)でした。今回は連載のまとめとして、ネットワークとボリュームの活用によって、1つのサーバもしくはPC上に複数のアプリケーション環境を動かす方法をみていきいましょう。 Docker Composeはプロジェクトごとにネットワークを持つ 前回はDockerのネットワークの扱いを学びました。Dockerコンテナを実行すると、そのコンテナ内のプロセスは、デフォルトで「bridge」という名称の仮想的な内部ネットワークを通して通信を行います。またホスト上のブリッジ(仮想的なネットワーク・スイッチ)を経由して、Dockerが作成する他の内部ネットワークや、ホスト側のインターフェースを通して、インターネットなどの外部ネットワ

    Docker Compose入門 (4) ~ネットワークの活用とボリューム~ | さくらのナレッジ
  • Observabilityをはじめよう!(前編) 〜Observabilityの背景と構成要素〜 | さくらのナレッジ

    はじめに 仲亀と申します。さくらインターネットでエバンジェリストやインフラエンジニアをしています。エンジニアとしてはシステムの監視まわりの仕事をしています。最近は、今回もご紹介するPrometheusとかGrafana Lokiとか、あの辺が結構好きで触っています。 この記事では、監視について興味をお持ちの皆さんに向けて「Observabilityをはじめよう!」ということで、Observabilityの概念や、それが必要となる背景を少し説明した上で、Observabilityを実現するための要素となる、MetricsやLogsやTracesなどをどこから始めていけばいいんだろう、といったところをご紹介していこうと思います。 この記事のゴールとしては、皆さんに「Observability完全に理解した」と言っていただけたらいいかなと思っています。しかし、この記事を読んだだけですぐに皆さんの

    Observabilityをはじめよう!(前編) 〜Observabilityの背景と構成要素〜 | さくらのナレッジ
  • Observabilityをはじめよう!(後編) 〜Metrics/Logs/Tracesチュートリアル〜 | さくらのナレッジ

    Observabilityをはじめよう!(後編) 〜Metrics/Logs/Tracesチュートリアル〜 | さくらのナレッジ
  • JavaScriptの非同期処理を理解する その2 〜Promise編〜 | さくらのナレッジ

    こんにちは!小田島です。前回の「コールバック編」を納稿したとき、アイキャッチ画像はJavaScriptのロゴにタイトルの文字を入れただけというとんでもないやっつけ仕事だったのですが、さくナレ編集部の方に「シリーズで理解が深まる」というすごい煽り文句がついたとてもカッコいい画像に差し替えていただきました。アイキャッチ詐欺にならないようにがんばります。 非同期処理シリーズの2回目はPromiseについての説明です。前回はコールバックについて説明しましたが、Promiseを使うことでどのように便利になったのでしょうか。それでは見ていきましょう!今回はコードが多いのでかなり分量が多く感じられるかもしれませんが、実際はあまり大したことはありません。 今回の目的 今回説明するのはPromiseです。これはFutureパターン(Promiseパターン)というデザインパターンの一種で、ECMAScript

    JavaScriptの非同期処理を理解する その2 〜Promise編〜 | さくらのナレッジ
  • ウェブ・アプリエンジニアのためのFigma入門 (2) Figmaのキホン | さくらのナレッジ

    前回はFigmaを使うべき理由を説明しました。連載の2回目となる記事では、Figmaの基的な使い方を説明します。 今回の記事ではデザインツールを使ったことのない人向けに知ってほしいこと、Figmaの画面説明やレイヤーの設置・編集方法といったFigmaUIモックを作るための機能について説明します。 SketchやAdobe XDのようなデザインツールの基的な使い方に慣れている方は、この記事を飛ばして次回の記事を読み進めることをおすすめします。 UIモックを作るにあたって 連載は主にソフトウェアエンジニアを対象にしています。そこで、UIデザインツールを使ったことのない人に知ってほしいことをお伝えしておきます。 基的に(凝ったデザインでなければ)UIモックはシェープとテキストといったレイヤーで構成されています。シェープは四角形や円形などの形状をもつもの、テキストは文字通り文字を示して

    ウェブ・アプリエンジニアのためのFigma入門 (2) Figmaのキホン | さくらのナレッジ
  • ゼロトラストで、もっと便利に、もっと安全に | さくらのナレッジ

    さくらインターネットで、技術担当の執行役員と、最高情報セキュリティ責任者を務めている江草です。 最近、新型コロナウイルスの影響もあって在宅勤務などをされている方が増えていると思いますが、そういったときに、今までオフィスで使えていたサービスをどうやったら社外でも使えるかという話をしたいと思います。 在宅勤務やリモートワークVPN さくらインターネットでは以前から「さぶりこ どこでもワーキング」という人事制度によって、1日単位で、あるいは午前中だけとか午後だけとかで、どこでも仕事してよいということをやっていました。さらに新型コロナウイルスの件もあって、現在では出社不要な人の大半が在宅勤務をしています。3月末にはすでに原則自宅勤務ということにして、全社リモートワークに転換しました。4月末の時点では93%の社員が在宅勤務を選択していました。仮に今後、新型コロナウイルスが終息したとしても、基的に

    ゼロトラストで、もっと便利に、もっと安全に | さくらのナレッジ
  • 開発ツール(QEMU)への貢献(後半) 〜自作OSのいまと昔 [第4回] | さくらのナレッジ

    これまでのおさらい 前回の記事では、QEMUのVFAT機能にバグがあり、そしてその原因がメモリ破壊である、というところまでを突き止めました。 しかし、バグを発生させる直接の要因がわかっただけでは、そのバグを修正することはできません。今回はさらにもう一歩踏み込んで、どのような仕組みでメモリ破壊が発生したのかを突き止めると共に、それに基づいて修正パッチを投稿するところまでの道のりを紹介します。 lldbのwatchpoint機能 メモリ破壊系のバグらしき挙動を発見した際には、どのプログラムがそのアドレスのデータを書き換えたのか特定できれば、多くの場合原因が判明します。これを特定するために使える機能として、デバッガのwatchpointという機能があります。これは、特定のアドレスに対しての読み書きアクセスが発生した場合に、プログラムの動作を止めてデバッガで調査できる機能です。 この機能は通常、ハ

    開発ツール(QEMU)への貢献(後半) 〜自作OSのいまと昔 [第4回] | さくらのナレッジ
  • いまさら聞けないNode.js | さくらのナレッジ

    こんにちは!小田島です。さくらのナレッジで初めて記事を書きます。よろしくお願いします! 先日5月13日、Deno 1.0がリリースされました。Denoについては後日記事を書きますが、今回はDenoが生まれるきっかけとなったNode.jsについて、いまさら聞けないことを色々書いていきます。 対象者 記事は、Node.jsについて以下のような疑問を持っている人が対象です。 Node.jsって何? Node.jsを使うと何がうれしいの? Node.jsを使うときに何を注意すればいいの? なお、記事はNode.jsのイメージを掴んでもらうのが目的であり、ハンズオンではありません。そのためコードは1行も出てきませんのでご了承ください。 そもそもNode.jsとは? 超ざっくり説明すると、JavaScriptの実行環境です。 それまではJavaScriptといえばウェブブラウザー上で動かすのが普通

    いまさら聞けないNode.js | さくらのナレッジ
  • サービス間通信のための新技術「gRPC」入門 | さくらのナレッジ

    たとえば次のような「user.proto」というプロトコル定義ファイルを用意し、これを変換する例を見てみよう。 syntax = "proto3"; message Picture { uint32 id = 1; uint32 width = 2; uint32 height = 3; enum PictureType { PNG = 0; JPEG = 1; GIF = 2; } PictureType type = 4; } message User { uint32 id = 1; string nickname = 2; string mail_address = 3; enum UserType { NORMAL = 0; ADMINISTRATOR = 1; GUEST = 2; DISABLED = 3; } UserType user_type = 4; repeated

    サービス間通信のための新技術「gRPC」入門 | さくらのナレッジ
  • PythonやJavaScript、C#などでクラウドインフラを定義できる構成管理ツール「Pulumi」を使ってみる | さくらのナレッジ

    昨今では、IaaSやPaaSといったさまざまなクラウドサービスが多くのシステムで使われている。こうしたクラウドサービスの多くはAPIを使ったインフラの操作をサポートしており、それらを活用するさまざまな支援ツールが登場している。今回はそういったツールの1つで、さまざまなプログラミング言語を使ってクラウド上のリソースを管理できる「Pulumi」を紹介する。 さまざまな言語でさまざまなクラウドプラットフォームを操作可能 昨今ではInfrastrcture as a Service(IaaS)やPaaS(Platform as a Service)といった、ソフトウェアを動かすためのインフラストラクチャ(インフラ)やプラットフォームを提供するクラウドサービスが広く普及している。こういったクラウドサービスには「使った分だけの料金支払いで済む」「ソフトウェアの実行環境や各種インフラを迅速に調達できる」

    PythonやJavaScript、C#などでクラウドインフラを定義できる構成管理ツール「Pulumi」を使ってみる | さくらのナレッジ