Reason: Fixes CVE-2020-13946 Apache Cassandra RMI Rebind Vulnerability
Description:
It is possible for a local attacker without access to the Apache Cassandra
process or configuration files to manipulate the RMI registry to perform a
man-in-the-middle attack and capture user names and passwords used to access
the JMX interface. The attacker can then use these credentials to access
the JMX interface and perform unauthorised operations.
Users should also be aware of CVE-2019-2684, a JRE vulnerability that enables
this issue to be exploited remotely.
2.1.x users should upgrade to 2.1.22
This change:
- refactors the packages so it is easier to create and update new versions of
cassandra.
- fixes a bug where Cassandra will not connect to another member unless
LD_PRELOADing libstdc++.so. Without that change, it generates a stack trace
and dies with exceptions regarding org.xerial.snappy.
- restricts platform to linux as procps is also linux only.
Upstream likes to move "old" releases to an archive mirror as soon as a
new one is released. This is now handled for free by mirrors.nix.
(No idea why cs.utah.edu was used to begin with; it's now added to
mirrors.nix. Note that it doesn't support SSL, but that applies to
several others so I don't see the harm.)
${cassandra}/conf/cassandra-env.sh calls free program on Linux systems in
calculate_heap_sizes().
Adding procps to the path makes the free program available.
According to the project website (http://cassandra.apache.org)
version 2.0 is the most stable version. It's the one that's
recommended if you are already in production or going into
production soon.
Cassandra 2.0 is also the version that's officially supported
by Titan (http://thinkaurelius.github.io/titan), a distributed
graph database that uses cassandra as one of it's backends.