Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support centos based systems #16

Open
jkroepke opened this issue Apr 6, 2019 · 3 comments
Open

support centos based systems #16

jkroepke opened this issue Apr 6, 2019 · 3 comments

Comments

@jkroepke
Copy link

jkroepke commented Apr 6, 2019

On Centos there is no ipsec command. Instead you have to use strongswan like strongswan statusall

@dennisstritzke
Copy link
Owner

Thanks for reporting!

How would you differentiate this issue from #17, which you also opened? Does this boil down to the same basic issue? Also I am a bit confused that you reference the ipsec command in #17, but saying here that is isn't supported. Could you please clarify?

@jkroepke
Copy link
Author

jkroepke commented Apr 9, 2019

Sure.

On CentOS (and RedHat). You can install strongswan, too. But strongswan ist from the 3rd party repo EPEL and does not provide the ipsec command. To interact with strongswan you have to type strongswan statusall instead ipsec statusall.

Currently. ipsec is hardcoded here and should be configurable.

cmd := exec.Command("ipsec", "statusall", tunnel.name)

#17 Talks about the standard and redhat support packages libreswan. libreswan is the supported ipsec utility to manage ipsec connection but the output differs from strongswan.

In both away the support isn't usable on centos or rhel based system right now.

@dennisstritzke
Copy link
Owner

Thank you for the elaboration. That sounds absolutely reasonable to support by the IPsec Exporter.

To add support within a future release, issues #15 and #17 should be implemented too. I think the following approach would be suitable:

  • Check, if the exporter is able to first load ipsec.conf and second the Swan-based config.
  • Test the system, which command is available to report metrics: ipsec, strongswan or libreswan
  • Implementing this through a general IPsec Golang Interface and providing implementations for ipsec, strongswan and libreswan should be most suitable for the problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants