راهنما
حریم خصوصی و امنیت
پارسرگ برای یک نفر روی یک رایانه طراحی شده است. اسناد، ایندکس و گفتوگوها را محلی نگه میدارد و هر چیزی که ممکن است بیرون برود، فقط با انتخاب صریح شما بیرون میرود.
آنچه سرویس هرگز ذخیره نمیکند
- فایلهای بارگذاریشده: فقط در زمان پردازش، در حافظه و یک پوشهٔ موقت روی RAM هستند. آنچه میماند متن استخراجشده، بردارهای آن و نسخهٔ کوچکی از هر تصویر خواندهشده با OCR است که همه در Qdrant نگه داشته میشوند. با SOURCE_IMAGE_PREVIEWS=0 تصویرها نگه داشته نمیشوند.
- پرسشها و بخشهای بازیابیشده: در لاگ ثبت نمیشوند.
- گفتوگوها: در IndexedDB مرورگر خودتان ذخیره میشوند، نه روی سرور.
- کلیدهای API: فقط در حافظهٔ فرایند یا متغیرهای محیطی.
محافظتهای شبکه
- فقط درخواستهایی پذیرفته میشوند که مقصدشان localhost، 127.0.0.1 یا ::1 باشد؛ همین جلوی حملهٔ DNS rebinding را میگیرد. با PARSRAG_ALLOWED_HOSTS میتوانید نامهای دیگری را برای استفاده در شبکهٔ محلی اضافه کنید.
- درخواستهایی که داده را تغییر میدهند باید از نشانی خود برنامه یا از یک مبدأ مجاز بیایند.
- نشانی Ollama به loopback، سرویس ollama، host.docker.internal و میزبانهای فهرست OLLAMA_ALLOWED_HOSTS محدود است و مرورگر نمیتواند این فهرست را گسترش دهد.
- تنظیماتی که در برنامه تغییر میدهید به چیزهایی که از مرز اعتماد محافظت میکنند دست نمیزنند: پورتها، میزبانها و مبدأهای مجاز، OLLAMA_ALLOWED_HOSTS، سقف درخواست، سقف حافظه و دانلود مدل.
- برنامه بهطور پیشفرض روی 127.0.0.1 گوش میدهد و Qdrant روی شبکهای داخلی و بدون دسترسی بیرونی است.
ایمنسازی کانتینر
- سیستم فایل فقطخواندنی، پوشهٔ /tmp روی RAM، بدون امکان گرفتن امتیاز تازه و با حذف همهٔ capabilityهای لینوکس.
- برنامه با کاربری غیر از root اجرا میشود و pip از image نهایی حذف شده است.
- سقف حافظه بهطور پیشفرض: ۶ گیگابایت برای برنامه، ۲ گیگابایت برای Qdrant و ۱۲ گیگابایت برای Ollama داخل Docker.
اگر میخواهید پارسرگ را روی شبکهٔ مشترک یا نامطمئن بگذارید، به یک reverse proxy با احراز هویت نیاز دارید. خود Ollama هم احراز هویت ندارد؛ پس Ollamaی رایانه را روی شبکهٔ عمومی باز نگذارید. آسیبپذیریها را بهصورت خصوصی و از زبانهٔ Security مخزن در گیتهاب گزارش کنید.