Last active
April 13, 2024 09:26
-
-
Save skidunion/8fb085b41d30a81ec9bd8029c34b2d87 to your computer and use it in GitHub Desktop.
Personal Shadowsocks filter list
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from sys import argv | |
from base64 import b64decode | |
from urllib.parse import urlparse | |
def to_acl(line: str) -> str: | |
rule = line.lstrip('|.').replace('*', '/').rstrip('/') | |
# Append protocol if not included | |
if not rule.startswith("http://") and not rule.startswith("https://"): | |
rule = "http://" + rule | |
hostname = urlparse(rule).hostname.replace('.', '\\.') | |
return f"(?:^|\.){hostname}$" | |
with open(argv[1]) as list: | |
list = list.read() | |
if 'AutoProxy' not in list: | |
# Needs to be decoded | |
list = b64decode(list.encode()).decode() | |
list = filter( | |
lambda line: line[0] not in '![', list.splitlines()) | |
acl = set(map(to_acl, list)) | |
print(""" | |
[bypass_all] | |
[proxy_list] | |
""", '\n'.join(acl), sep='\n') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from sys import argv | |
from datetime import datetime | |
from hashlib import md5 | |
from base64 import b64encode | |
def main(): | |
with open(argv[1]) as list: | |
list = list.read() | |
list = list.replace("{last_modified}", datetime.utcnow().strftime( | |
f"%a, %d %b %Y %H:%M:%S UTC")) | |
without_checksum = '\n'.join( | |
filter(lambda line: line != '! Checksum: {checksum}', list.splitlines())) | |
checksum = b64encode( | |
md5(without_checksum.encode()).digest()).decode()[:-2] | |
list = list.replace("{checksum}", checksum) | |
result = b64encode(list.encode()).decode() | |
for chunk in range(0, len(result) // 64 + 1): | |
start = chunk * 64 | |
print(result[start:start+64]) | |
if __name__ == "__main__": | |
main() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[bypass_all] | |
[proxy_list] | |
(?:^|\.)twimg\.com$ | |
(?:^|\.)protonmail\.com$ | |
(?:^|\.)intel\.com$ | |
(?:^|\.)medium\.com$ | |
(?:^|\.)auth0\.openai\.com$ | |
(?:^|\.)x\.com$ | |
(?:^|\.)opensea\.io$ | |
(?:^|\.)twitter\.com$ | |
(?:^|\.)linkedin\.com$ | |
(?:^|\.)theins\.ru$ | |
(?:^|\.)instagram\.com$ | |
(?:^|\.)remove\.bg$ | |
(?:^|\.)chat\.openai\.com$ | |
(?:^|\.)protonmail\.ch$ | |
(?:^|\.)rutracker\.org$ | |
(?:^|\.)proton\.me$ | |
(?:^|\.)t\.co$ | |
(?:^|\.)yt3\.ggpht\.com$ | |
(?:^|\.)cdn\.oaistatic\.com$ | |
(?:^|\.)facebook\.com$ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
W0F1dG9Qcm94eSAwLjIuOV0KISBDaGVja3N1bTogM3VOS0VyelVMc3ZwczJiaUt5 | |
V0JIZwohIEV4cGlyZXM6IDZoCiEgTGFzdCBNb2RpZmllZDogVHVlLCAyMSBOb3Yg | |
MjAyMyAxNTowMDoyMyBVVEMKIQohIFBlcnNvbmFsIFNoYWRvd3NvY2tzIGZpbHRl | |
ciBsaXN0LiAKISBDb250YWlucyBzb21lIHNpdGVzIGJsb2NrZWQgaW4gUnVzc2lh | |
LCBhcyB3ZWxsIAohIGFzIHNpdGVzIHdpdGggdGhlaXIgb3duIEthbXBmcy4KIS0t | |
LS0tLS0tLS0tLS0tT2ZpY2lhbGx5IGJsb2NrZWQtLS0tLS0tLS0tLS0tLS0tCnx8 | |
eXQzLmdncGh0LmNvbQp8fG1lZGl1bS5jb20KfHx4LmNvbQp8fHR3aXR0ZXIuY29t | |
Cnx8dHdpbWcuY29tCnx8dC5jbwp8fHByb3Rvbi5tZQp8fHByb3Rvbm1haWwuY29t | |
Cnx8cHJvdG9ubWFpbC5jaAp8fG9wZW5zZWEuaW8KfHxmYWNlYm9vay5jb20KfHxp | |
bnN0YWdyYW0uY29tCnx8cnV0cmFja2VyLm9yZwp8fHRoZWlucy5ydQp8fGxpbmtl | |
ZGluLmNvbQohLS0tLS0tLS0tLS0tUHVycG9zZWZ1bGx5IGJsb2NrZWQtLS0tLS0t | |
LS0tLS0tLS0KfHxpbnRlbC5jb20KfHxyZW1vdmUuYmcKfHxjaGF0Lm9wZW5haS5j | |
b20KfHxhdXRoMC5vcGVuYWkuY29tCnx8Y2RuLm9haXN0YXRpYy5jb20KIS0tLS0t | |
LS0tLS0tLS0tLS0tLS0tLUVPRi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCg== |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[AutoProxy 0.2.9] | |
! Checksum: {checksum} | |
! Expires: 6h | |
! Last Modified: {last_modified} | |
! | |
! Personal Shadowsocks filter list. | |
! Contains some sites blocked in Russia, as well | |
! as sites with their own Kampfs. | |
!--------------Oficially blocked---------------- | |
||yt3.ggpht.com | |
||medium.com | |
||x.com | |
||twitter.com | |
||twimg.com | |
||t.co | |
||proton.me | |
||protonmail.com | |
||protonmail.ch | |
||opensea.io | |
||facebook.com | |
||instagram.com | |
||rutracker.org | |
||theins.ru | |
||linkedin.com | |
!------------Purposefully blocked--------------- | |
||intel.com | |
||remove.bg | |
||chat.openai.com | |
||auth0.openai.com | |
||cdn.oaistatic.com | |
!---------------------EOF----------------------- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.yt3.ggpht.com | |
.builds.parsec.app | |
.twitter.com | |
.t.co | |
.twimg.com | |
.proton.me | |
.protonmail.ch | |
.protonmail.com | |
.medium.com | |
.intel.com | |
.openai.com | |
.oaistatic.com | |
.gemini.google.com | |
.bing.com | |
.microsoft.com | |
.live.com | |
.spotify.com | |
.anydesk.com | |
.linkedin.com | |
.licdn.com | |
.tumblr.com | |
.soundcloud.com | |
.quora.com | |
.fbcdn.net | |
.meta.com |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment