ورود

View Full Version : سوال: اتصال کلاینت به سرور بدون اجازه گرفتن فایروال از کاربر



N30TheM4TRIX
جمعه 20 اردیبهشت 1392, 21:50 عصر
سلام
من دارم یه برنامه برای مدیریت کلاینت های یک شبکه می نویسم نرم افزاری که سمت کلاینت اجرامیشه باید در زمان خاصی به سرور (مدیر شبکه ) متصل بشه و اطلاعات خاصی براش بفرسته (مثل صفحه دسکتاپ برای کنترل کلاینت ها و...) مشکلم اینه که وقتی می خواد به سرور متصل بشه فایروال پیغام میده و از کاربر (کلاینت) مجوز اتصال می خواد.

میشه از این کار جلو گیری کرد؟؟

Felony
جمعه 20 اردیبهشت 1392, 22:00 عصر
یا باید فایروال سیستم رو خاموش کنید ، یا باید برنامتون رو در لیست برنامه های دارای مجوز برای اتصال در فایروال قرار بدید ، یا دنبال راهی برای Bypass کردن فایروال باشید ، که مورد آخر اصولا راه های Public رو آنتی ویروس ها بهشون گیر میدن و راه های Private هم که پولی هستن و در انجمن های زیر زمینی و ... فروخته میشن .

N30TheM4TRIX
جمعه 20 اردیبهشت 1392, 22:25 عصر
یا باید فایروال سیستم رو خاموش کنید ، یا باید برنامتون رو در لیست برنامه های دارای مجوز برای اتصال در فایروال قرار بدید ، یا دنبال راهی برای Bypass کردن فایروال باشید ، که مورد آخر اصولا راه های Public رو آنتی ویروس ها بهشون گیر میدن و راه های Private هم که پولی هستن و در انجمن های زیر زمینی و ... فروخته میشن .
ممنون از کمک

گزینه اول که نمیشه .
گزینه دوم ،
برای اینکه بخوام برنامه رو در لیست برنامه های مجاز قرار بدم حتماً باید به صورت دستی این کار انجام بشه یا میتونم از طریق برنامه نویسی هم به لیست ایتمی اضافه کنم ؟؟؟

گزینه سوم هم کار من نیست.

بهروز عباسی
جمعه 20 اردیبهشت 1392, 22:55 عصر
برای اینکه بخوام برنامه رو در لیست برنامه های مجاز قرار بدم حتماً باید به صورت دستی این کار انجام بشه یا میتونم از طریق برنامه نویسی هم به لیست ایتمی اضافه کنم ؟؟؟



از تابع زیر برای افزودن یک Port خاص به لیست Portهای مجاز میتونی استفاده کنی (البته برای فایروال ویندوز)
{...}
(* uses System.Win.ComObj; // CreateOleObject *)
procedure AddPortTo7Firewall(const AEntryName: string; APortNumber: cardinal);
const
NET_FW_PROFILE_DOMAIN = 0;
NET_FW_PROFILE_STANDARD = 1;
NET_FW_PROFILE2_PRIVATE = 2;
NET_FW_PROFILE2_PUBLIC = 4;
NET_FW_IP_VERSION_ANY = 2;
NET_FW_IP_PROTOCOL_UDP = 17;
NET_FW_IP_PROTOCOL_TCP = 6;
NET_FW_SCOPE_ALL = 0;
NET_FW_SCOPE_LOCAL_SUBNET = 1;
NET_FW_ACTION_ALLOW = 1;
var
fwMgr, profile, NewRule, RulesObject: OleVariant;
begin
fwMgr := CreateOleObject('HNetCfg.FwPolicy2');
profile := NET_FW_PROFILE2_PRIVATE OR NET_FW_PROFILE2_PUBLIC;

try
RulesObject := fwMgr.Rules;
NewRule := CreateOleObject('HNetCfg.FWRule');
try
NewRule.Name := AEntryName;
NewRule.Description := AEntryName;
NewRule.Protocol := NET_FW_IP_PROTOCOL_TCP;
NewRule.LocalPorts := APortNumber;
NewRule.Enabled := TRUE;
NewRule.Profiles := profile;
NewRule.Action := NET_FW_ACTION_ALLOW;
RulesObject.Add(NewRule);
finally
NewRule := varNull;
RulesObject := varNull;
end;
finally
profile := varNull;
fwMgr := varNull;
end;
end;

نحوه استفاده :
AddPortTo7Firewall('Virus :)', 2005);

اینم نتیجه کار !

(نمی دونم چرا نمی تونم عکس آپلود کنم ؟!)
اینم بیشتر بدانیدش حتماً بخون
(http://www.activexperts.com/activmonitor/windowsmanagement/scripts/networking/windowsfirewall/)
شب خوش

Mask
شنبه 21 اردیبهشت 1392, 12:22 عصر
البته میتونی از پورت 80 هم استفاده کنی.
اغلب فایروالهان براحتی پورت 80 رو میذارن اطلاعات رد و بدل بشه و اصلا ککشون هم نمی گزه!!!
خیلی از فایروالها رو امتحان کردم ولی براحتی تروجان ها اطلاعات رد و بدل می کنند اون هم از پروتکل http.

hp1361
یک شنبه 14 مهر 1392, 10:27 صبح
سلام

من در برنامه ام که از Datasnap استفاده کرده ام هم سرور و هم کلاینت رو تنظیم کردم از پورت 80 و پروتوکل http استفاده کنه. اما تا زمانیکه بر روی سرور پورت TCP:80 رو باز نزارم امکان اتصال نیست. مگه نه اینکه پورت 80 بصورت پیش فرض(برای اتصال بروزرها) بازه؟