ケーススタディ: Canonical が Forward Email のオープンソース エンタープライズ ソリューションを使用して Ubuntu のメール管理を強化する方法

Canonical が、シームレスな SSO 統合を備えた Forward Email のオープンソースの耐量子エンタープライズ ソリューションを使用して、Ubuntu、Kubuntu、Lubuntu、Edubuntu ドメイン全体で電子メール管理を合理化した方法をご覧ください。

オープンソースソフトウェアの世界では、これほど影響力のある名前はほとんどありません。 正規、その背後にある会社 ウブントゥは、世界で最も人気のあるLinuxディストリビューションの1つです。Ubuntuを含む複数のディストリビューションにまたがる広大なエコシステムにより、 クブントゥ, ルブンツ, エデュブントゥ、その他多くの企業と同様に、Canonical は多数のドメインにわたる電子メール アドレスの管理において特有の課題に直面していました。このケース スタディでは、Canonical が Forward Email と提携して、オープンソースの価値に完全に一致するシームレスで安全かつプライバシー重視のエンタープライズ電子メール管理ソリューションをどのように作成したかについて説明します。

課題: 複雑な電子メールエコシステムの管理

Canonical のエコシステムは多様かつ広範です。世界中に数百万人のユーザーがおり、さまざまなプロジェクトに数千人の貢献者がいるため、複数のドメインにまたがるメール アドレスの管理は大きな課題でした。コア貢献者には、堅牢な Ubuntu ドメイン管理システムを通じてセキュリティと使いやすさを維持しながら、プロジェクトへの関与を反映する公式メール アドレス (@ubuntu.com、@kubuntu.org など) が必要でした。

Forward Email を実装する前、Canonical は次の問題に悩まされていました。

  • 複数のドメインにわたる電子メール アドレスの管理 (@ubuntu.com、@kubuntu.org、@lubuntu.me、@edubuntu.org、および @ubuntu.net)
  • コア貢献者に一貫したメールエクスペリエンスを提供する
  • 既存のメールサービスとの統合 Ubuntu 1 シングルサインオン(SSO)システム
  • プライバシー、セキュリティ、オープンソースの電子メールセキュリティへの取り組みに沿ったソリューションを見つける
  • コスト効率よく安全なメールインフラを拡張

重要なポイント

  • Canonicalは、複数のUbuntuドメインにわたる統合メール管理ソリューションの実装に成功しました。
  • Forward Emailの100%オープンソースアプローチはCanonicalの価値観と完全に一致しています
  • Ubuntu OneとのSSO統合により、貢献者に対してシームレスな認証が提供されます。
  • 量子耐性暗号化により、すべての電子メール通信の長期的なセキュリティが確保されます。
  • このソリューションはコスト効率よく拡張でき、Canonicalの拡大する貢献者ベースをサポートします。

メールを転送する理由

プライバシーとセキュリティに重点を置いた唯一の 100% オープンソース メール サービス プロバイダーである Forward Email は、Canonical のエンタープライズ メール転送のニーズにぴったりでした。当社の価値観は、Canonical のオープンソース ソフトウェアとプライバシーへの取り組みと完全に一致していました。

Forward Email が理想的な選択肢となった主な要因は次のとおりです。

  1. 完全なオープンソースコードベース: 当社のプラットフォームはオープンソースであり、 GitHub透明性とコミュニティ貢献を可能にしています。多くの「プライバシー重視」のメールプロバイダーがフロントエンドのみをオープンソース化し、バックエンドを非公開にしているのとは異なり、私たちはフロントエンドとバックエンドの両方のコードベース全体を誰でも閲覧できるようにしています。 GitHub.

  2. プライバシー重視のアプローチ: 他のプロバイダーとは異なり、当社はメールを共有データベースに保存せず、TLS による強力な暗号化を使用しています。当社の基本的なプライバシー哲学はシンプルです。 あなたのメールはあなただけのものですこの原則は、電子メールの転送の処理方法から暗号化の実装方法まで、私たちが行うすべての技術的決定の指針となります。

  3. 第三者に依存しない: Amazon SES やその他のサードパーティのサービスは使用していないため、電子メール インフラストラクチャを完全に制御でき、サードパーティのサービスによる潜在的なプライバシー漏洩を排除できます。

  4. コスト効率の高いスケーリング: 当社の価格モデルにより、組織はユーザーごとに料金を支払うことなく拡張できるため、Canonical の大規模な貢献者ベースに最適です。

  5. 量子耐性暗号化: 個別に暗号化されたSQLiteメールボックスを使用しています。 ChaCha20-ポリ1305 暗号として 量子安全な暗号化各メールボックスは個別の暗号化ファイルであるため、あるユーザーのデータにアクセスしても、他のユーザーのデータへのアクセスは許可されません。

実装: シームレスな SSO 統合

実装の最も重要な側面の 1 つは、Canonical の既存の Ubuntu One SSO システムとの統合でした。この統合により、コア コントリビューターは既存の Ubuntu One 認証情報を使用して @ubuntu.com の電子メール アドレスを管理できるようになります。

認証フローの可視化

次の図は、完全な認証と電子メールのプロビジョニング フローを示しています。

flowchart TD
    A[User visits forwardemail.net/ubuntu] --> B[User clicks 'Log in with Ubuntu One']
    B --> C[Redirect to Ubuntu SSO service]
    C --> D[User authenticates with Ubuntu One credentials]
    D --> E[Redirect back to Forward Email with authenticated profile]
    E --> F[Forward Email verifies user]
subgraph "User Verification Process"
    F --> G{Is user banned?}
    G -->|Yes| H[Error: User is banned]
    G -->|No| I[Query Launchpad API]
    I --> J{Is user valid?}
    J -->|No| K[Error: User is not valid]
    J -->|Yes| L{Has signed Ubuntu CoC?}
    L -->|No| M[Error: User has not signed CoC]
    L -->|Yes| N[Fetch Ubuntu team membership]
end

subgraph "Email Provisioning Process"
    N --> O[Get Ubuntu members map]
    O --> P{Is user in team?}
    P -->|Yes| Q[Check for existing alias]
    Q --> R{Alias exists?}
    R -->|No| S[Create new email alias]
    R -->|Yes| T[Update existing alias]
    S --> U[Send notification email]
    T --> U
    P -->|No| V[No email provisioned]
end

subgraph "Error Handling"
    H --> W[Log error with user details]
    K --> W
    M --> W
    W --> X[Email team at Ubuntu]
    X --> Y[Store error in cache to prevent duplicates]
end

技術的実装の詳細

Forward Email と Ubuntu One SSO の統合は、passport-ubuntu 認証戦略のカスタム実装を通じて実現されました。これにより、Ubuntu One と Forward Email のシステム間でシームレスな認証フローが実現しました。

認証フロー

認証プロセスは次のように機能します。

  1. ユーザーは、Ubuntuの専用メール管理ページにアクセスします。 forwardemail.net/ubuntu
  2. 「Ubuntu Oneでログイン」をクリックすると、Ubuntu SSOサービスにリダイレクトされます。
  3. Ubuntu Oneの認証情報で認証した後、認証されたプロファイルでメール転送にリダイレクトされます。
  4. 転送メールは、貢献者のステータスを確認し、それに応じてメールアドレスを提供または管理します。

技術的な実装では、 passport-ubuntu パッケージは パスポート Ubuntuで認証するための戦略 オープンID構成には以下が含まれます。

passport.use(new UbuntuStrategy({
  returnURL: process.env.UBUNTU_CALLBACK_URL,
  realm: process.env.UBUNTU_REALM,
  stateless: true
}, function(identifier, profile, done) {
  // User verification and email provisioning logic
}));

Launchpad API の統合と検証

私たちの実装の重要な要素は、 ランチパッドUbuntu ユーザーとそのチーム メンバーシップを検証するための API です。この統合を効率的かつ確実に処理するために、再利用可能なヘルパー関数を作成しました。

sync-ubuntu-user.js ヘルパー関数は、Launchpad API を通じてユーザーを検証し、ユーザーの電子メール アドレスを管理する役割を担います。以下に、その仕組みを簡略化して示します。

async function syncUbuntuUser(user, map) {
  try {
    // Validate user object
    if (!_.isObject(user) ||
        !isSANB(user[fields.ubuntuUsername]) ||
        !isSANB(user[fields.ubuntuProfileID]) ||
        !isEmail(user.email))
      throw new TypeError('Invalid user object');
// Get Ubuntu members map if not provided
if (!(map instanceof Map))
  map = await getUbuntuMembersMap(resolver);

// Check if user is banned
if (user[config.userFields.isBanned]) {
  throw new InvalidUbuntuUserError('User was banned', { ignoreHook: true });
}

// Query Launchpad API to validate user
const url = `https://api.launchpad.net/1.0/~${user[fields.ubuntuUsername]}`;
const response = await retryRequest(url, { resolver });
const json = await response.body.json();

// Validate required boolean properties
if (!json.is_valid)
  throw new InvalidUbuntuUserError('Property "is_valid" was false');

if (!json.is_ubuntu_coc_signer)
  throw new InvalidUbuntuUserError('Property "is_ubuntu_coc_signer" was false');

// Process each domain for the user
await pMap([...map.keys()], async (name) => {
  // Find domain in database
  const domain = await Domains.findOne({
    name,
    plan: 'team',
    has_txt_record: true
  }).populate('members.user');

  // Process user's email alias for this domain
  if (map.get(name).has(user[fields.ubuntuUsername])) {
    // User is a member of this team, create or update alias
    let alias = await Aliases.findOne({
      user: user._id,
      domain: domain._id,
      name: user[fields.ubuntuUsername].toLowerCase()
    });

    if (!alias) {
      // Create new alias with appropriate error handling
      alias = await Aliases.create({
        user: user._id,
        domain: domain._id,
        name: user[fields.ubuntuUsername].toLowerCase(),
        recipients: [user.email],
        locale: user[config.lastLocaleField],
        is_enabled: true
      });

      // Notify admins about new alias creation
      await emailHelper({
        template: 'alert',
        message: {
          to: adminEmailsForDomain,
          subject: `New @${domain.name} email address created`
        },
        locals: {
          message: `A new email address ${user[fields.ubuntuUsername].toLowerCase()}@${domain.name} was created for ${user.email}`
        }
      });
    }
  }
});

return true;

} catch (err) { // Handle and log errors await logErrorWithUser(err, user); throw err; } }

異なる Ubuntu ドメイン間のチーム メンバーシップの管理を簡素化するために、ドメイン名とそれに対応する Launchpad チーム間の簡単なマッピングを作成しました。

ubuntuTeamMapping: {
  'ubuntu.com': '~ubuntumembers',
  'kubuntu.org': '~kubuntu-members',
  'lubuntu.me': '~lubuntu-members',
  'edubuntu.org': '~edubuntu-members',
  'ubuntustudio.com': '~ubuntustudio-core',
  'ubuntu.net': '~ubuntu-smtp-test'
},

このシンプルなマッピングにより、チーム メンバーシップの確認と電子メール アドレスのプロビジョニングのプロセスを自動化できるため、新しいドメインが追加されてもシステムの保守と拡張が容易になります。

エラー処理と通知

私たちは次のような堅牢なエラー処理システムを実装しました:

  1. 詳細なユーザー情報とともにすべてのエラーを記録します
  2. 問題が検出されるとUbuntuチームにメールが送信されます
  3. 新しい投稿者がサインアップし、電子メールアドレスが作成されると管理者に通知します
  4. Ubuntu行動規範に署名していないユーザーなどの特殊なケースに対応します

これにより、問題が迅速に特定され、対処され、電子メール システムの整合性が維持されます。

DNS 構成と電子メール ルーティング

Forward Email を通じて管理される各ドメインに対して、Canonical は検証用にシンプルな DNS TXT レコードを追加しました。

❯ dig ubuntu.com txt
ubuntu.com.             600     IN      TXT     "forward-email-site-verification=6IsURgl2t7"

この検証レコードによりドメインの所有権が確認され、当社のシステムがこれらのドメインのメールを安全に管理できるようになります。Canonical は、信頼性が高く安全なメール配信インフラストラクチャを提供する Postfix 経由でメールを当社のサービスにルーティングします。

結果: 電子メール管理の合理化とセキュリティの強化

Forward Email のエンタープライズ ソリューションの実装により、Canonical のすべてのドメインの電子メール管理に大きなメリットがもたらされました。

運用効率

  • 集中管理: すべてのUbuntu関連ドメインが単一のインターフェースを通じて管理されるようになりました
  • 管理オーバーヘッドの削減: 貢献者向けの自動プロビジョニングとセルフサービス管理
  • 簡素化されたオンボーディング: 新しい貢献者はすぐに公式のメールアドレスを取得できます

強化されたセキュリティとプライバシー

  • エンドツーエンドの暗号化: すべてのメールは高度な標準を使用して暗号化されます
  • 共有データベースなし: 各ユーザーのメールは個別に暗号化されたSQLiteデータベースに保存され、従来の共有リレーショナルデータベースよりも根本的に安全なサンドボックス暗号化アプローチを提供します。
  • オープンソースセキュリティ: 透明なコードベースによりコミュニティによるセキュリティレビューが可能
  • インメモリ処理: 転送されたメールをディスクに保存しないため、プライバシー保護が強化されます
  • メタデータ保存なし: 多くのメールプロバイダーとは異なり、誰が誰にメールを送信したかの記録は保存しません。

コスト削減

  • スケーラブルな価格モデル: ユーザーごとの料金は発生しないため、Canonicalはコストを増やすことなく貢献者を追加できます。
  • インフラの必要性の低減: 異なるドメインごとに別々のメールサーバーを維持する必要はありません
  • サポート要件の低減: セルフサービス管理によりITサポートチケットが削減されます

貢献者エクスペリエンスの向上

  • シームレスな認証: 既存のUbuntu One認証情報によるシングルサインオン
  • 一貫したブランディング: すべてのUbuntu関連サービスにわたる統一されたエクスペリエンス
  • 信頼性の高いメール配信: 高品質のIPレピュテーションにより、メールが確実に宛先に届きます

Forward Email との統合により、Canonical の電子メール管理プロセスが大幅に効率化されました。管理オーバーヘッドが削減され、セキュリティが強化された状態で、寄稿者は @ubuntu.com の電子メール アドレスをシームレスに管理できるようになりました。

今後の展望: 継続的な協力

Canonical と Forward Email のパートナーシップは進化し続けています。私たちはいくつかの取り組みに協力しています。

  • Ubuntu関連ドメインへのメールサービスの拡張
  • 貢献者のフィードバックに基づいてユーザーインターフェースを強化する
  • 追加のセキュリティ機能の実装
  • オープンソースのコラボレーションを活用する新しい方法を模索

結論: 完璧なオープンソースパートナーシップ

Canonical と Forward Email のコラボレーションは、共通の価値観に基づくパートナーシップの力を示しています。Canonical は、電子メール サービス プロバイダーとして Forward Email を選択することで、自社の技術要件を満たすだけでなく、オープンソース ソフトウェア、プライバシー、セキュリティに対する取り組みにも完全に一致するソリューションを見つけました。

複数のドメインを管理し、既存のシステムとのシームレスな認証を必要とする組織にとって、Forward Emailは柔軟で安全、かつプライバシーを重視したソリューションを提供します。 オープンソースアプローチ 透明性を確保し、コミュニティへの貢献を可能にするため、これらの原則を重視する組織にとって理想的な選択肢となります。

Canonical と Forward Email はそれぞれそれぞれの分野で革新を続けており、このパートナーシップは、効果的なソリューションを生み出すオープンソースのコラボレーションと共通の価値観の力を証明するものとなっています。

ぜひチェックしてみてください リアルタイムのサービスステータス 高品質の IP レピュテーションとメールの配信性を確保するために継続的に監視している現在のメール配信パフォーマンスを確認します。

エンタープライズクライアントのサポート

このケーススタディは Canonical とのパートナーシップに焦点を当てていますが、Forward Email はプライバシー、セキュリティ、オープンソースの原則に対する当社の取り組みを高く評価する、さまざまな業界の多数のエンタープライズ クライアントを誇りを持ってサポートしています。

当社のエンタープライズ ソリューションは、あらゆる規模の組織の特定のニーズを満たすようにカスタマイズされており、次のような機能を提供します。

  • カスタムドメイン メール管理 複数のドメインにまたがる
  • 既存の認証システムとのシームレスな統合
  • 専用のマトリックスチャットサポートチャネル
  • 強化されたセキュリティ機能には以下が含まれます 量子耐性暗号
  • 完全なデータの移植性と所有権
  • 透明性と信頼性を実現する 100% オープンソース インフラストラクチャ

お問い合わせ

組織でエンタープライズ メールのニーズがある場合、または Forward Email がプライバシーとセキュリティを強化しながらメール管理を効率化する方法について詳しく知りたい場合は、ぜひご連絡ください。

  • 直接メールでお問い合わせください support@forwardemail.net
  • ヘルプリクエストを送信するには、 ヘルプページ
  • チェックしてください 価格ページ エンタープライズプラン向け

当社のチームは、お客様の特定の要件について話し合い、お客様の組織の価値観と技術的ニーズに合ったカスタマイズされたソリューションを開発する準備ができています。

メールの転送について

Forward Email is the 100% open-source and privacy-focused email service. We provide custom domain email forwarding, SMTP, IMAP, and POP3 services with a focus on security, privacy, and transparency. Our entire codebase is available on GitHub、私たちはユーザーのプライバシーとセキュリティを尊重するメールサービスを提供することに尽力しています。 オープンソースの電子メールが未来である理由, メール転送の仕組み、 と 電子メールのプライバシー保護に対する当社のアプローチ.