web-dev-qa-db-ja.com

「unix」// var / run / charon.ctl 'への接続に失敗しました:接続が拒否されました

私はこの問題を見つけるためにこれと他のサイトでいくつかの答えを見つけようとしましたが、私の試みは失敗しました。ルールは非常に簡単です。ユビキーが接続されているときにIpsecトンネルを確立したいのです。

  • 私のルールはファイル/etc/udev/rules.d/local.rulesにあります

スクリプトは次のようになります。

SUBSYSTEM=="input", ACTION=="add", ENV{ID_MODEL}=="Yubikey_4_OTP+U2F+CCID" , RUN+="/usr/local/bin/Yubikey.sh"

次に、スクリプト/usr/local/bin/Yubikey.shには以下が含まれます。

#!/bin/sh
ipsec restart 
if (ipsec status | grep none);then
     ipsec up connection
fi

これにより、入力デバイスが接続されたときにスクリプトが呼び出され、以前に開始されたトンネルがない場合、スクリプトはipsecを再起動してトンネルを開始します。ただし、ipsec statusコマンドを実行すると次のエラーが発生するため、トンネルは開始されません。

connecting to 'unix:///var/run/charon.ctl' failed: Connection refused
failed to connect to stroke socket 'unix"//var/run/charon.ctl'
2
debugging XD

デフォルトでは、rootだけがそのソケット(およびstrongSwanによって作成された他のソケット)にアクセスできます。 それを変更するオプション があります。たとえば、charon.groupin strongswan.conf を使用すると、構成されたグループのメンバーであるユーザーも、ソケット。また、システムにカーネルレベルのセキュリティモジュール(AppArmorなど)が存在し、ソケットへのアクセスを妨げる可能性があります(システムログでエントリを確認し、それに応じてポリシーを調整します)。

非推奨のipsec/starter/strokeを使用する代わりに、 [〜#〜] vici [〜#〜] / swanctl への切り替えを検討することをお勧めします。

1
ecdsa