Shoalsteed / reseed

1 stars 0 forks source link

Create Admin Requirements #2

Open Shoalsteed opened 4 years ago

Shoalsteed commented 4 years ago

Since we have lost communication with Backup, let's create the guide and responsibilities for a new person who can take on the Reseed Admin role.

eyedeekay commented 4 years ago

Going to draft things here as I think of them.

Shoalsteed commented 4 years ago
Shoalsteed commented 4 years ago

Can anyone except zzz add new reseeds? Can there be 2 contacts?

eyedeekay commented 4 years ago

Technically anyone with mtn privs can, but adding them without letting him in on the process will be(quite properly) interpreted as an attack. If he is unavailable, I will do it, otherwise, it's got to be something we both discuss

eyedeekay commented 4 years ago

Re: monitoring, we can pretty much monitor reseeds remotely too, it's just a matter of me finding the time required to actually implement it. What I'd like to do is have all the reseeds monitor eachother, and output it all to the educational page we give to browsers and non-I2P clients.

eyedeekay commented 4 years ago

https://github.com/eyedeekay/reseed-monitoring is about 50% ready as of this afternoon.

eyedeekay commented 4 years ago

https://eyedeekay.github.io/reseed-monitoring/ Snapshot of what it looks like right now

eyedeekay commented 4 years ago

Policy draft here: https://i2pforum.net/viewtopic.php?f=21&t=961

Reseed Policy

This page was last updated in July of 2020.

Definitions

Section 1: Responsibilities

Reseed operation is a critical task on the I2P network, and the vast majority of new network participants join the network by getting their initial peers from a Reseed Service. These services must be reliable, publically accessible, and they must be secure against attack. The operators must be attentive, responsive, and perform routine maintenance.

Reseed servers are themselves fairly simple to operate, and require only a nominal amount of systems-administration knowledge to run successfully. Participation in the community by reporting and responding to reseed issues and remaining in contact with the I2P Project and with the Reseed Administrator is the most important aspect of reseed administration.

Reseed operators can contact the Reseed Administrator at [EMAIL TO BE FILLED IN]. Please encrypt e-mails to this address using the following [GPG KEY TO BE FILLED IN].

General support for reseed operation can be obtained by contacting the project on IRC at #i2p-dev for non-sensitive issues.

Criteria for Inclusion as an Official Reseed

Section 2: Log Requirements

Section 3: Communication Requirements

Section 4: Service Requirements

Section 5: Breakdown Procedure

eyedeekay commented 1 year ago

IMO these rules do not need to be changed. They are current and adequate.

Shoalsteed commented 1 year ago

Definitions

Reseed Server: A Reseed server is a publically-accessible service that provides a an initial set of peers to new routers joining the I2P network. A new router builds exploratory tunnels through these peers to integrate into the I2P network.

Reseed Operator: A sysadmin who operates an individual reseed server.

Reseed Administrator: An I2P team member who is responsible for communicating with Reseed Operators on any and all issues relating to reseed server operation, and to communicate those needs to the I2P team.

Official Reseed: An Official Reseed is a reseed which has met all the requirements to be included in the core Java I2P router implementation from geti2p.net, and which has been submitted to that project successfully for inclusion.An aspiring Official Reseed which is in the process of meeting these criteria is referred to as an "Official Reseed Candidate" until the process is complete. The process is outlined here: https://geti2p.net/en/get-involved/guides/reseed

Unofficial Reseed: A reseed which is conducted in such a way that it cannot meet the criteria of the Official Reseed process is called an "Unofficial Reseed."

Reseed operation is a critical task in the I2P network. These services must be reliable, publicly accessible, and they must be secure against attack. The operators must be attentive, responsive, and perform routine maintenance. Reseed servers are themselves fairly simple to operate, and require a nominal amount of systems-administration knowledge to run successfully. Participation in the community by reporting and responding to reseed issues and remaining in contact with the I2P Project and with the Reseed Administrator is the most important aspect of reseed administration. General support for reseed operation can be obtained by contacting the team on IRC at #i2p-dev for non-sensitive issues.

Criteria For Inclusion As An Official Reseed

Log Requirements Official reseed services do not require logging of user data, and in accordance with international regulations can not retain that data. This includes IP address data, and any kind of geolocation data. Retaining this information will result in a reseed being removed from the I2P software. Reseed operators may, if they wish, log the number of requests they receive, but this must be in the aggregate and not be combined with any user data.

Communication Requirements Reseed operators must be in communication with the Reseed Administrator. They must be reachable by GPG-encrypted e-mail, and also at least one other channel from the following list:

I2PRC Jabber/XMPP (Off-The-Record) i2pforum.net/i2pforum.i2p i2pgit.org via a gitlab issue

In cases where none of these is suitable the Reseed Operator and Reseed Administrator may work together to coordinate another backup channel.

A Reseed Service is by definition a public-facing, essential service to the I2P network and should present itself to potential visitors in a professional and respectful way. The project will refuse reseed applications from domains and individuals we believe to be bad actors.

Reseed services serve an error page to non-I2P user agents. If the Reseed Operator chooses to customize this error page, educational or promotional material about I2P is acceptable.

Should a widespread attack on Reseed Services occur, the Reseed Administrator will contact all Reseed Operators via GPG-encrypted e-mail.

Service Requirements Reseed services are sometimes targeted by attackers seeking to scrape them for peer information, or simply to deny service to legitimate reseed participants. The reseed server software contains built-in rate limiting defenses against this behavior which is enabled by default, and should remain on all reseed servers. In cases where the Reseed Operator chooses to implement fail2ban or another solution for rate-limiting or security, they may do at their discretion, on the condition that the software can be made to meet the logging requirements from Section 2. Rate-limiting to prevent reseed scraping activity is mandatory. The operator of a Reseed Service should apply security updates to the host operating system as soon as possible, and if their operating system supports it, they should enable automatic updates.

Breakdown Procedure There is no ongoing or periodic requirement to maintain communication with the Reseed Administrator. When a breakage occurs, the Reseed Administrator reaches out to the Reseed Operator to guide them to a solution.

The Reseed Administrator uses a tool to periodically check and validate that Reseed Services are working successfully. This procedure should run daily at a specified time, in order to produce consistent results.

Examples of a Broken Reseed Service If a Reseed Service is providing out-of-date reseed data, has expired or invalid certificates, or simply becomes unavailable, the reseed is considered broken and the following procedure begins.The Reseed Administrator initiates contact with the Reseed Operator by their GPG-encrypted e-mail with a short summary of the issue at hand. The Reseed Operator should respond within 72 hours to the Reseed Administrator, withtheir availability to work with the Reseed Administrator to solve the problem.

If the Reseed Operator is available to continue operating their reseed server, the Reseed Administrator and the Reseed Operator work together to resolve the problem. When the problem is resolved, no further action is required. If the issue cannot be resolved, the Reseed Service is removed from the list of default Reseed Services until such a time as service can be restored. If the Reseed Operator is not available to continue operating their reseed server, the Reseed Service is removed from the list of default Reseed Services. The operator is thanked for their time and participation in the I2P community.

If the Reseed Operator fails to respond, the Reseed Administrator notifies the development team via #i2p-dev and via a forum post on i2pforum.net/i2pforum.i2p The following information will be provided:

If the Reseed Service is responding to new routers with out-of-date routerinfos and the Reseed Operator remains unresponsive, the Reseed Service will be removed from the I2P software. The Reseed Operator must resumes contact and re-apply to be a Reseed Service if necessary. If the Reseed Service provides a TLS certificate and is responding to new participants via an invalid or incorrect certificate, is is to be assumed that the Reseed Service has had its security compromised and that someone is attempting impersonation. The Reseed Service will be removed from the I2P software. Reseed services who's certificates merely expired can be re-added when they renew their certificates. If the Reseed Service is unreachable then the service may remain in the reseed list until the next release, or it may be removed at the developers discretion.

Shoalsteed commented 1 year ago

This is complete and can be added to Gitbook w/ testing addition