Yandex.Disk đã cấm sử dụng tiện ích rclone nguồn mở

thời tiền sử

Này Habr!

Điều thôi thúc tôi viết bài đăng này là một lỗi khá kỳ lạ, tối qua trên một máy tính xách tay chạy Linux (vâng, tôi là một trong những người kỳ lạ sử dụng GNU/Linux trên máy tính xách tay) mà tôi đã nhận được thay vì nội dung Yandex của tôi. .Đĩa:

$ ls -l /mnt/yadisk
ls: reading directory '.': Input/output error
total 0

Suy nghĩ đầu tiên của tôi: mạng bị đứt, không có vấn đề gì lớn. Nhưng khi cố gắng kết nối lại thư mục, một lỗi mới xuất hiện:

$ sudo umount /mnt/yadisk && rclone mount --timeout 30m ya:/ /mnt/yadisk
2020/02/21 20:54:26 ERROR : /: Dir.Stat error: [401 - UnauthorizedError] Unauthorized (Не авторизован.)

Điều này đã lạ rồi. Token có bị hỏng không? Không vấn đề gì, tôi sẽ ủy quyền lại!

$ rclone config
... (опущу тут весь вывод терминала) ..

Sau khi vào web và thử đăng nhập vào đó, tôi nhận được một thông báo cụ thể hơn:

Ứng dụng này đã bị chặn vì các hoạt động độc hại và do đó không được phép truy cập (unauthorized_client).

Suy nghĩ đầu tiên: cái gì?

Về rclone

Một sự giúp đỡ nho nhỏ:
rclone - khá nổi tiếng mở tiện ích để làm việc với kho lưu trữ đám mây (liên tục thời gian, два, ba được đề cập trên Habré). Tác giả gọi nó là “rsync for cloud storage”, khá dung lượng. Nhưng chức năng không bị giới hạn ở điều này: ngoài các chức năng rsync, nó còn có thể gắn đĩa, thực hiện chức năng ncdu (nhân tiện, nó đã từng cho phép tôi phát hiện tính toán không chính xác về dung lượng trống trên Yandex.Disk và thành công giải quyết vấn đề này thông qua hỗ trợ kỹ thuật), cũng như nhiều thứ khác. Tiện ích này hỗ trợ hàng chục kho lưu trữ đám mây cũng như các giao thức truyền thống hơn - WebDAV, FTP, rsync và các giao thức khác. Để truy cập Yandex.Disk, tiện ích sử dụng API công khai chính thức Đĩa.

Tiện ích này thực sự độc đáo và (theo ý kiến ​​​​của tôi) đại diện cho loại chương trình mà bạn cài đặt một lần và chúng liên tục mang lại lợi ích.

Chuyện gì đã xảy ra thế?

Chuyển sang Google, tôi nhận ra ngay rằng mình không đơn độc. Ăn lỗi trong github chính thức, cũng như thảo luận về diễn đàn chính thức.
Tóm tắt: client_id của tiện ích bị Yandex.Disk chặn, đó là lý do tại sao bạn không thể đăng nhập được nữa. Bạn có thể thử thay đổi client_id, nhưng thực tế không phải là số phận tương tự sẽ không xảy ra với id mới.
Phản hồi hỗ trợ được đăng trên cùng một diễn đàn:

Thực tế là chương trình Rclone cho phép bạn sử dụng Yandex.Disk làm thành phần cơ sở hạ tầng và Yandex.Disk là một dịch vụ cá nhân không được thiết kế để giải quyết những vấn đề như vậy. Do đó, chúng tôi không hỗ trợ liên kết Rclone - Yandex.Disk.

"Thành phần cơ sở hạ tầng"? Chà, nếu bạn không thể, thì có lẽ nó được mô tả trong các quy tắc, tôi nghĩ, và không có điều gì giống như vậy trong quy tắc của chính đĩa hoặc của anh ấy API công khai Tôi không tìm thấy.

Được rồi, hãy viết thư để hỗ trợ.
Câu trả lời đầu tiên khớp với câu trả lời được đăng ở trên (về “thành phần cơ sở hạ tầng”). Được rồi, chúng tôi không tự hào.

Trao đổi thêm với sự hỗ trợ

Tôi:

Bạn có thể vui lòng cho tôi biết điều này vi phạm quy tắc dịch vụ nào không?
Tôi đã nghiên cứu các điều khoản sử dụng Yandex Disk và không có lệnh cấm nào đối với việc sử dụng nó “như một thành phần cơ sở hạ tầng”.

Hơn nữa, tôi không thể sử dụng tiện ích từ máy tính xách tay cá nhân của mình để làm việc với đĩa. Điều này hoàn toàn không thuộc “thành phần cơ sở hạ tầng”. Xin lỗi, máy khách đĩa tiêu chuẩn rất tệ.

Hỗ trợ:

Sergey, thực tế là Yandex.Disk chủ yếu là một dịch vụ cá nhân không được thiết kế để tự động tải xuống các bản sao lưu.
Bạn có thể đồng bộ hóa dữ liệu giữa máy tính của mình và Yandex.Disk, đồng thời sử dụng giao diện web Disk để tải xuống tệp và làm việc với chúng.

Nếu vì lý do nào đó bạn không hài lòng với chương trình của chúng tôi, vui lòng lên tiếng. Theo truyền thống, chúng tôi lắng nghe phản hồi của người dùng khi phát hành bản cập nhật sản phẩm.

Bạn có thể tự làm quen với các tài liệu quản lý việc sử dụng dịch vụ, đặc biệt là “Thỏa thuận người dùng đối với Dịch vụ Yandex”, được xuất bản tại: https://yandex.ru/legal/rules/, cũng như “Điều khoản sử dụng dịch vụ Yandex.Disk”: https://yandex.ru/legal/disk_termsofuse

Để giải quyết các vấn đề đòi hỏi lượng điện năng lớn, chúng tôi khuyên bạn nên sử dụng Yandex.Cloud. Đây là một dịch vụ đám mây Yandex khác, được tạo ra để giải quyết các vấn đề kinh doanh. Bạn có thể tìm hiểu thêm về Yandex.Cloud tại đây: https://cloud.yandex.ru

Tôi:

Bạn đã không trả lời câu hỏi của tôi. Xin cho biết điểm nào trong nội quy dịch vụ vi phạm việc sử dụng rclone? Tôi đã nghiên cứu kỹ các quy tắc từ liên kết của bạn (ngay cả trước khi bạn gửi nó).

Mới đây bạn đã viết một bài viết rằng Yandex hỗ trợ mạnh mẽ OpenSource và nếu không có OpenSource Yandex và Internet hiện đại sẽ không tồn tại (https://habr.com/ru/post/480090/).

Và bây giờ bạn đang chặn tiện ích OpenSource vì một lý do xa vời.

Nhân tiện, chương trình không tự động tải xuống các bản sao lưu, chương trình được thiết kế để hoạt động với bộ lưu trữ đám mây, bao gồm cả việc đồng bộ hóa dữ liệu giữa máy tính và Yandex.Disk. Và đây là tiện ích trường hợp sử dụng chính của tôi, hiện không có sẵn.

Hỗ trợ:

Theo khoản 3.1. "Thỏa thuận người dùng" Yandex có quyền thiết lập các hạn chế trong việc sử dụng dịch vụ cho tất cả Người dùng hoặc đối với một số danh mục Người dùng nhất định (tùy thuộc vào vị trí của Người dùng, ngôn ngữ mà dịch vụ được cung cấp, v.v.), bao gồm: sự hiện diện/vắng mặt của một số dịch vụ chức năng nhất định, thời gian lưu trữ thư trong dịch vụ Yandex.Mail, bất kỳ nội dung nào khác, số lượng thư tối đa có thể được gửi hoặc nhận bởi một người dùng đã đăng ký, kích thước tối đa của thư hoặc dung lượng ổ đĩa, số lượng cuộc gọi tối đa đến dịch vụ trong một khoảng thời gian nhất định, dung lượng lưu trữ nội dung trong khoảng thời gian tối đa, các tham số đặc biệt cho nội dung đã tải xuống, v.v. Yandex có thể cấm quyền truy cập tự động vào các dịch vụ của mình và cũng ngừng chấp nhận bất kỳ thông tin nào được tạo tự động (ví dụ: thư rác).

Người dùng cũng được cảnh báo về điều này trong khoản 4.6. "Điều khoản sử dụng Yandex.Disk."

Xin lưu ý rằng “Điều khoản sử dụng của Yandex.Disk” cũng thiết lập nghĩa vụ đối với Người dùng phải hành động một cách thiện chí và không lạm dụng các chức năng của Dịch vụ. Người dùng cũng cam kết không tổ chức chia sẻ tệp hàng loạt bằng các chức năng của Dịch vụ.

Yandex có quyền áp dụng các quy tắc, giới hạn và hạn chế nhằm ngăn chặn, hạn chế và ngăn chặn việc chia sẻ tệp hàng loạt theo quy định tại khoản 4.5. Những điều khoản này".

Câu trả lời cuối cùng mang lại sự rõ ràng. Đặc biệt là hai đoạn đầu có tham chiếu đến khoản 3.1. Yandex "Thỏa thuận người dùng" và điều khoản 4.6. "Điều khoản sử dụng Yandex.Disk." Văn bản của 4.6 không được đưa ra ở đây, nhưng tôi sẽ đưa nó ở đây:

4.6. Yandex có quyền thiết lập bất kỳ quy tắc, giới hạn và hạn chế nào (kỹ thuật, pháp lý, tổ chức hoặc khác) đối với việc sử dụng Dịch vụ và có thể thay đổi chúng theo quyết định riêng của mình mà không cần thông báo trước cho Người dùng. Trong trường hợp điều này không bị pháp luật cấm, các quy tắc, giới hạn và hạn chế được chỉ định có thể khác nhau đối với các loại Người dùng khác nhau.

Kết luận?

Mới đây thôi em yêu bobuk trong của anh ấy đăng ở đây trên Habré đã viết rằng Yandex tin rằng:

Chúng tôi tại Yandex tin rằng Internet hiện đại là không thể nếu không có văn hóa nguồn mở và những người đầu tư thời gian vào việc phát triển các chương trình nguồn mở.

Nhưng trong thực tế nó lại diễn ra hoàn toàn khác. Một tiện ích tuyệt vời bị chặn vì một thứ không bị quy định dịch vụ cấm. Bởi vì tiện ích cho phép bạn sử dụng công khai Mục đích dự định của API đĩa là tải xuống các tệp. Họ chặn không phải vì vi phạm các quy tắc của dịch vụ mà vì họ có thể.
Điều kỳ lạ gấp đôi là không phải những người vi phạm quy tắc cụ thể sẽ bị chặn (cũng không rõ đó là những quy tắc nào; các quy tắc không cấm sử dụng đĩa để sao lưu ở bất kỳ đâu). Một công cụ có chức năng sao lưu chỉ là một trong nhiều công cụ sẽ bị chặn.

Thành phần cơ sở hạ tầng là gì và tại sao chúng không thể sử dụng được bằng đĩa cũng chưa rõ ràng. Ngay cả một trình duyệt cũng có thể được sử dụng như một “thành phần cơ sở hạ tầng”, liệu có nên cấm sử dụng đĩa trong trình duyệt không?

Phải làm gì?

Hiện tại, hãy sử dụng client_id và tiếp tục cuộc sống của bạn. Tuy nhiên, dựa trên phản hồi từ bộ phận hỗ trợ kỹ thuật, chúng tôi có thể mong đợi cuộc săn lùng phù thủy sẽ tiếp tục và các client_id khác, rclone tác nhân người dùng hoặc thậm chí một số cách heuristic để chặn tiện ích sẽ bị chặn.

Tái bút Tôi chân thành hy vọng rằng đã có một sai sót hoặc hiểu lầm đơn giản nào đó. Yandex có những chuyên gia xuất sắc (tôi biết nhiều người trong số họ) và trong số họ, tôi chắc chắn có những người dùng rclone.

Cập nhật 24.02.2020:
В số 690 Podcast Radio-T, người đồng chủ trì cũng là Bobuk đáng kính, đã thảo luận về việc chặn rclone. Bắt đầu lúc 1:51:40.

Nguồn: www.habr.com

Thêm một lời nhận xét