その古い openfortivpn .deb は本当にあなたの Raspberry Pi に合っていますか?
アーカイブされた armhf .deb は、お使いの Pi がもう一致しないリリースを固定しています。インストールする前に、OS のリリース、パッケージのアーキテクチャ、更新元を確認してください。
フォーラムの回答は完全なファイル名を教えてくれ、その名前は解決策のように見えます。.deb が一つ、コマンドが一つ、それで終わりです。その文字列が実際に符号化しているのは、パッケージのバージョン、CPU アーキテクチャ、そして誰かが投稿を書いた日にそれをビルドしたディストリビューションのスイートです。この三つのどれも、机の上のボードを自動的に説明してはくれません。古いダウンロードは一台のマシンの状況のスナップショットであり、あなたのためのインストール計画ではありません。
ファイル名が静かに固定しているもの
openfortivpn_1.17.0-1_armhf.deb のような名前を右から左へ読んでください。接尾辞はバイナリがコンパイルされたアーキテクチャ、中央のフィールドは上流とパッケージングのリビジョン、暗黙の第四フィールドはそれがビルドされたスイートのライブラリセットです。
64 ビットの Raspberry Pi OS ではシステムのアーキテクチャは arm64 なので、dpkg -i はアーキテクチャの不一致で armhf パッケージを拒否します。multiarch でインストールできる場合でも、バイナリはビルド時のリリースのライブラリのバージョンを期待し、より新しいベースシステムはそれらを提供しないかもしれません。結果は、実行ファイルが起動しない インストール済みパッケージであり、これこそ人々がクライアント自体が壊れているとよく誤解する障害です。
ボードが ARM デバイスであることは、ARM パッケージを適切にはしません。アーキテクチャは一つの軸であり、リリースと ABI は他の二つで、それぞれ独立に失敗します。
ダウンロードリンクを尋ねる前にディストリビューションに尋ねる
保守されているチャネルはどれも、今インストールされるものを教えてくれます。ファイル転送を検討する前に、実際に使われているリポジトリを使って対象マシンでクエリを実行してください。
cat /etc/os-release
dpkg --print-architecture
apt-cache policy openfortivpnバージョンとリポジトリ名を伴う候補行は、そのディストリビューションがこのシステム向けのビルドをすでに持っていることを意味します。候補がない場合や、使うつもりのないスイートの候補である場合は、ソフトウェアがどこかにあるかどうかではなく、あなたのソースについての情報です。
メタデータの更新が失敗したら、その失敗をパッケージの話とは切り離してください。名前解決、リポジトリの転送、Release 署名の欠落、サポート終了のスイートはどれも、クライアントが関わる前に apt update を壊します。ソースを直すのは VPN クライアントを選ぶのとは別の作業であり、両者を混ぜることが、人々が現行システムを時代遅れのリリースに向けてしまう原因です。
apt が検証するものと、ダウンロードしたファイルが得られないもの
通常のインストールは署名の連鎖をたどります。アーカイブが索引に署名し、索引が各パッケージのハッシュを持ち、パッケージが一致しなければなりません。アーカイブ認証のリファレンス はその連鎖を、個々のファイルに添付された署名を確認するという考え方から切り離します。
古い HTTP リンクから保存したファイルには、そのどれもありません。リポジトリの身元なしに届き、ディストリビューションがクライアントを修正しても更新されず、誰がそれを置き換える責任を負うかも記録されません。固定した成果物を持つ管理者にとっては今でも正当な選択ですが、その選択には所有者、どこかに記録されたチェックサム、次のセキュリティ更新の計画が必要です。
古い手順を動かし続けるために署名エラーを抑えたり TLS 検証を無効にしたりすると、何かを検証していた唯一の部分を失います。代わりに、失敗している検証を復元してください。
クライアントをインストールし、その後で接続を別にデバッグする
保守された候補がある場合は、通常のレビュー済みトランザクションでインストールし、パッケージマネージャーに何をしたかを記録させてください。
展開が本当に上流のビルドを必要とするなら、プロジェクトの現在のビルド手順に従い、いま自分が保守するソフトウェアとして扱ってください。開発パッケージ、pkg-config、TLS ライブラリのヘッダー、PPP デーモンは実際の依存関係であり、後で必要になる削除手順も同様です。
インストールはローカルのソフトウェア段階にすぎません。ゲートウェイはクライアントのプロトコルと認証フローを受け入れなければならず、クライアントはゲートウェイが提示する証明書を信頼しなければならず、トンネルには動作する PPP 層に加えてルートとリゾルバの所有者が必要です。完了したパッケージトランザクションは、ゲートウェイがアカウントを受け入れるか、プライベート範囲に到達できるかを何も証明しません。インストーラーを再実行するのではなく、壊れる場所で各層をテストしてください。
古いファイル名に代わるべき計画
まずプラットフォームの同一性を書き出します。OS のリリース、アーキテクチャ、使用中のソース一覧です。次に、パッケージがどこから来るのか、認可された場所を名指しします。ディストリビューションのリポジトリ、固定した鍵を持つベンダーのリポジトリ、あるいは自分でコンパイルしてパッケージ化するビルドです。
最後に、保守担当者と更新経路を名指しします。誰も所有していないクライアントを動かす Pi は、最初のライブラリ更新までは動き続け、その後で同じ問題を抱えた誰かが同じフォーラムスレッドを見つけるでしょう。
修正された信念は一行で言えるほど単純です。古いパッケージはクライアントがかつてビルドされ動いた証拠であり、今夜あなたのボードにインストールされる証拠ではありません。三つの軸を確認し、それから更新し続けられるチャネルを選んでください。