-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
[Feature] RPC rate limiter #1597
Comments
Note: |
Oh, and just so that no one else tackles it in parallel, I'm already working on this. |
What's the status on this? |
Let's consider the the things we've used the RPC server for so far:
And some of the related issues we've encountered:
Having all the above in mind, I'd like to propose to start shifting towards dedicating the RPC server to local/restricted use; this means:
This proposal would completely resolve any concerns related to malicious RPC use; even if we used per-IP bans, a well-organized malicious actor could still set up a lot of RPC clients that would individually send requests at a rate right above the one we permit. |
One extra point for limiting RPC access as a policy: if we add private endpoints again, we would need to have a way of securely inputting and transmitting passwords in the headers, otherwise they'd be visible in command line history and transmitted in plaintext, which is very insecure. |
🚀 Feature
Add controls that allow snarkOS to adjust 2 rates:
a. The rate that RPC requests from all IP addresses are processed
b. The rate that RPC requests from a single IP address is processed
Add a "restricted_peers" list for RPC IP addresses that exceed the rate.
Motivation
Some IP addresses are spamming the sync node RPC endpoints.
The text was updated successfully, but these errors were encountered: