PDA

نسخه کامل مشاهده نسخه کامل : امنيت برتر در سرورهاي Apache



hatef_4541
24-01-2006, 03:11
اين مقاله به صورت قدم به قدم به شما نحوه نصب و تنظيم نمودن وب سرورهاي آپاچي نسخه 1.3.x جهت امنيت بالاتر را نشان مي دهد كه سعي شده جزئيات كار به خوبي مورد بررسي قرار بگيرد .

قبل از اينكه ما مرحله امنيت وب سرور آپاچي را مورد بررسي قرار دهيم بايد اين را مشخص نماييم كه چه استفاده اي از سرور را خواهيم نمود . متنوع بودن استفاده از وب سرورهاي آپاچي نوشتن يك روند جهاني جهت امنيت اين سرور را بسيار مشكل مي سازد . به همين دليل است كه در اين مقاله ما چنين وب سروري با چنين شرايطي را در نظر مي گيريم :

اين وب سرور از طريق اينترنت قابل دسترسي است

فقط صفحات اچ-تي-ام-ال ثابت در آن قرار مي گيرد

اين سرور مكانيزم هاستينگ مجازي را پشتيباني خواهد نمود

صفحات مهم وب سايت فقط از طريق يك آدرس IP مخصوص و يا كاربران خاص مورد استفاده قرار مي گيرد ( basic authentication )

اين سرور همه درخواست هاي دريافتي را ضبط مي كند ( شامل اطلاعاتي در مورد مرورگرهاي وب نيز خواهد شد )

از اين جهت قابل تاكيد است كه كه مدل ذكر شده در بالا PHP, JSP, CGI و ديگر تكنولوژي هايي كه امكان تداخل با سرويس هاي وب سرور را دارد را پشتيباني نمي كند . استفاده از تكنولوژي هايي كه در بالا ذكر شد با اين كه در دنياي امروز مورد احتياج هسنتد ممكن است يك ريسك امنيتي بزرگ در امنيت باشد كه قابل ذكر است يك اسكريپت كوچك مي تواند امنيت سرور را به كلي كاهش دهد . ولي چرا ؟ بايد بگم اسكريپت هاي كاربردي ASP/CGI ممكن است داراي حفره هاي امنيتي باشد ( مانند SQL Injection , CSS ) . دوم اين تكنولوژي ها ممكن است خود نيز داراي مشكل باشد ( مانند آسيب پذيري هاي ماژول هاي PHP, Perl و ... ) به همين دليل است استفاده از اين تكنولوژي ها را زماني پيشنهاد مي شود كه واقعا مورد احتياج باشند .

فرض هاي امنيتي

يكي از مهم ترين موارد در هر پروژه كامپيوتري توجه به فرض هاي امنيتي است ( با توجه به توضيحاتي كه در زير آورده مي شود اين موضوع به راحتي قابل تحليل است ) و اين فرض ها بايد قبل از اينكه يك پروژه به انجام برسد در نظر گرفته شود . فرض هاي امنيتي كه ما جهت وب سرورمان در نظر گرفته ايم اين ها هستند :

سيستم عامل بايد تا آنجايي كه امكان دارد از نظر امنيت مورد بررسي قرار گرفته باشد و مشكلات امنيتي ان برطرف گردد ( هم در مقابل حملات داخلي و هم ريموت )

وب سرور نبايد هيچ سرويس ديگري غير از سرويس اچ-تي-تي-پي را ارائه دهد

دسترسي ريموت به سرور بايد توسط يك فايروال كنترل گردد

سرويس آپاچي بايد تنها سرويسي باشد كه در سيستم وجود دارد

فقط ماژول هاي آپاچي آن هايي كه مورد احتياج هستند بايد فعال باشند

پروسه هاي آپاچي بايد دسترسي محدود شده به فايل هاي سيستمي داشته باشند

نصب سيستم عامل

قبل از نصب وب سرور آپاچي ما بايد يك سيستم عامل را انتخاب نماييم . سرور آپاچي مي تواند بر روي بيشتر سيستم عامل ها كامپايل و نصب شود . بيشتر مقاله بر روي امنيت وب سرور آپاچي در سيستم عامل FreeBSD ( نسخه 4.7 ) تاكيد دارد ولي سعي شده تا آن جا كه امكان داشته روش هاي به گونه اي باشند كه در بيشتر سيستم عامل ها قابل استفاده باشد . من استفاده از سيستم عامل ويندوز را پيشنهاد نمي كنم چون جهت بالا بردن امنيت آپاچي سازگاري كمي دارد .

اولين قدم در بالا بردن امنيت وب سرور , رفع مشكلات امنيتي سيستم عامل به طور كامل است كه البته مقالات بسياري بر روي اينترنت جهت اين كار موجود است .

خوب بعد از اينكه سيستم عامل نصب شد و مشكلات امنيتي آن رفع گرديد ما بايد يك گروه جديد ( Apache ) را به پروسه ها اضافه كنيم ( مثال زير اين روند را در FreeBSD نشان مي دهد )

pw groupadd apache
pw useradd apache -c "Apache Server" -d /dev/null -g apache -s /sbin/nologin



به طور پيش فرض پروسه هاي آپاچي با سطح دسترسي nobody ( به غير از پروسه اصلي آن كه با سطح دسترسي روت اجرا مي شود ) اجرا مي شوند كه اين نيز خود يك مشكل امنيتي است .
اما نرم افزارها ...

قدم بعدي دريافت آخرين نسخه وب سرور آپاچي است . كه بعضي از تنظيمات اين سرور در هنگام كامپايل قابل تغيير است به همين دليل اين حائز اهميت است كه سورس آن را در مقابل نسخه باينري دريافت نماييد .

اما بعد از دريافت ما بايد تصميم بگيريم كه چه ماژول هايي از سرور فعال شوند و توضيح كوتاهي در اين مورد در [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] قابل مشاهده است .

ماژول هاي آپاچي

انتخاب ماژول هاي اين سرور ار موارد مهم در امنيت سرور است . ما بايد اين قانون را مورد توجه قرار دهيم ( هر چه كم تر , بهتر ! ) . اما جهت روند امنيتي ماژول هايي كه مورد احتياج هستند در اينجا ذكر شده ‌:

نام ماژول شرح
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ويژگي هاي كلي آپاچي ( نصب در همه موارد مورد احتياج است‌)
mod_access فراهم نمودن كنترل دسترسي به كلاينت
mod_auth مورد احتياج جهت HTTP Basic Authentication
mod_dir مورد احتياج جهت جستجو و فايل هاي serve directory index : index.html, default.htm مانند

mod_log_config مورد احتياج جهت ضبط نمودن وقايع
mod_mime مورد احتياج جهت character set, content- encoding و ...


ديگر ماژول هاي آپاچي بايد غيرفعال شوند . اين ارزش را دارد كه بگويم دو ماژول آپاچي وجود دارند كه خطرناك تر از ديگر ماژول ها هستند : mod_autoindex mod_info و . اولين ماژول فراهم كننده directory indexing به صورت خودكار است و صورت پيش فرش فعال شده است . اين براحتي قابل متوجه شدن است كه اين ماژول نصب شده است يا نه ( براي مثال [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ) و محتواي دايركتوري ها را ببينيم و دومين ماژول mod_info هرگز نيايد از طريق اينترنت قابل دسترسي باشد به اين دليل كه دسترسي به تنظيمات سرور را امكان پذير مي سازد .

سوال بعدي چگونگي كامپايل ماژول ها است . روش ثابت راه حل مناسب تري به نظر مي رسد .

كامپايل نمودن نرم افزار

اول از همه بايد بگويم اگر :: پچ امنيتي جديدي وجود داشت :: بايد بروز رسانده شود بعد از آن بايد سرور كامپايل شود و از اين طريق نصب شود :

./configure --prefix=/usr/local/apache --disable-module=all --server-
uid=apache --server-gid=apache --enable-module=access --enable-
module=log_config --enable-module=dir --enable-module=mime --enable-module=auth

make
su
umask 022
make install
chown -R root:sys /usr/local/apache
قدم بعدي محدود نمودن دسترسي پروسه هاي آپاچي به فايل هاي سيتمي است. ما اين كار را از طريق ايجاد يك دايركتوري روت جديد در دايركتوري /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] انجام مي هيم :

مالك همه دايركتوري هاي بالا بايد روت باشد و سطح دسترسي بايد به 0755 تغيير يابد . بعد ما يك فايل ديوايس را ايجاد مي كنيم :

ls -al /dev/null
crw-rw-rw- 1 root wheel 2, 2 Mar 14 12:53 /dev/null
mknod /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] c 2 2
chown root:sys /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
chmod 666 /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]



يك روش ديگر نيز بايد استفاده شود تا /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ايجاد شود كه هم چنين براي اينكه سرور به درستي كار كند . به دليل اينكه سيستم FreeBSD است اين لاين بايد به /etc/rc.conf اضافه شود :

syslogd_flags="-l /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]"



ما براي اينكه تغييرات انجام بپذيرد بايد سيستم را ري استارت نماييم . البته جهت ايجاد /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] در سيستم عامل هاي ديگر بايد به راهنماي ديگر در مورد syslogd مراجعه كنيم .

قدم بعدي كپي [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] به يك دايركتوري جديد همراه با همه باينري ها و فايل لايبرري است . جهت اين كار بايد ليستي از فايل هاي مورد نياز را تهيه كنيم . ما مي توانيم يك ليست را با چنين دستوراتي تهيه نماييم :

دستور اجرا در محيط شرح
ldd همه ليك كننده فايل هاي اجرايي و يا لايبرري هاي به اشتراك گذاشته شده
ktrace/ktruss/kdump *BSD فعال كردن مسير يابي پروسه ها در كرنل و نشان دادن اطلاعات مسيب يابي كرنل
sotruss سولاريس مسير يابي پروسه هاي لايبرري به اشتراك گذاشته شده
strace/ltrace لينوكس مسير يابي فراخوان ها سيستمي و سيگنال ها
strings همه پيدا نمودن استرينگ هاي قابل پرينت در فايل هاي باينري
trace AIX ضبط كننده وقايع انتخاب شده در سيستم
trace (freeware) HP-UX <10.20 پرينت فراخوان هاي سيستمي و مسير يابي كرنل در پروسه ها
truss FreeBSD, Solaris, AIX 5L, SCO Unixware مسير يابي فراخوان ها سيستمي و سيگنال ها


مثال هايي از استفاده از دستورهاي ldd و strings و truss :

localhost# ldd /usr/local/apache/bin/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
/usr/local/apache/bin/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
libcrypt.so.2 => /usr/lib/libcrypt.so.2 (0x280bd000)
libc.so.4 => /usr/lib/libc.so.4 (0x280d6000)

localhost# strings /usr/local/apache/bin/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] | grep lib
/usr/libexec/ld-elf.so.1
libcrypt.so.2
libc.so.4

localhost# truss /usr/local/apache/bin/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] | grep open
(...)
open("/var/run/ld-elf.so.hints",0,00) = 3 (0x3)
open("/usr/lib/libcrypt.so.2",0,027757775370) = 3 (0x3)
open("/usr/lib/libc.so.4",0,027757775370) = 3 (0x3)
open("/etc/spwd.db",0,00) = 3 (0x3)
open("/etc/group",0,0666) = 3 (0x3)
open("/usr/local/apache/conf/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]",0,0666) = 3 (0x3)
(...)



دستورات بالا نه تنها جهت [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] بايد اجرا شوند بلكه جهت همه باينري ها و لايبرري ها مورد احتياج هستند . به دليل اينكه سيستم عامل ما FreeBSD است بايد چنين فايل هايي نيز كپي گردد :

cp /etc/hosts /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
cp /etc/host.conf /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
cp /etc/resolv.conf /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
cp /etc/group /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
cp /etc/master.passwd /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
cp /usr/local/apache/conf/mime.types /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]



دقت كنيد كه در /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ما بايد همه لاين ها را به غير از nobody و apache را حذف كنيم . در يك جاي ديگر ما بايد چنين عملي را نيز دوباره در /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] تكرار كنيم . سپس ما بايد بانك اطلاعاتي پسورد ها را اين گونه بسازيم :

cd /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
pwd_mkdb -d /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] passwords
rm -rf /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]



قدم بعدي اين است كه تست كنيم كه آيا [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] به درستي كار مي كند يا نه . جهت انجام اين كار ما بايد فايل تنظيمات آپاچي و index.html را كپي نماييم :

cp /usr/local/apache/conf/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
nf/
cp /usr/local/apache/htdocs/index.html.en /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]



بعد از كپي فايل هاي مورد احتياج ما بايد DocumentRoot رو همين طور كه در زير نشان داده شده تغيير دهيم :

DocumentRoot "/www"



سپس سرور را اجرا كنيم :

chroot /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] /usr/local/apache/bin/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

اگر با مشكلي برخورد نموديد من پيشنهاد مي كنم فايل ضبط كننده وقايع (chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]) را آناليز كنيد . از راه ديگر چنين فرماني نيز مي تواند به كار برده شود :

truss chroot /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] /usr/local/apache/bin/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]



اين فرمان مي تواند دليل مشكل ايجاد شده را نشان دهد . بعد از رفع مشكل همه خطاها ما مي توانيم سرور را تنظيم نماييم .

تنظيم نمودن سرور

قدم اول حذف فايل /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] است و جايگزين يك فايل جديد به جاي آن است . محتواي فايل بايد :

# =================================================
# Basic settings
# =================================================
ServerType standalone
ServerRoot "/usr/local/apache"
PidFile /usr/local/apache/logs/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
ScoreBoardFile /usr/local/apache/logs/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
ResourceConfig /dev/null
AccessConfig /dev/null

# =================================================
# Performance settings
# =================================================
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
MinSpareServers 5
MaxSpareServers 10
StartServers 5
MaxClients 150
MaxRequestsPerChild 0

# =================================================
# Apache's modules
# =================================================
ClearModuleList
AddModule mod_log_config.c
AddModule mod_mime.c
AddModule mod_dir.c
AddModule mod_access.c
AddModule mod_auth.c

# =================================================
# General settings
# =================================================
Port 80
User apache
Group apache
ServerAdmin Webmaster@[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
UseCanonicalName Off
ServerSignature Off
HostnameLookups Off
ServerTokens Prod
<IfModule mod_dir.c>
DirectoryIndex index.html
</IfModule>
DocumentRoot "/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]"

# =================================================
# Access control
# =================================================
<Directory />
Options None
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory "/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]">
Order allow,deny
Allow from all
</Directory>
<Directory "/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]">
Order allow,deny
Allow from all
</Directory>

# =================================================
# MIME encoding
# =================================================
<IfModule mod_mime.c>
TypesConfig /usr/local/apache/conf/mime.types
</IfModule>
DefaultType text/plain
<IfModule mod_mime.c>
AddEncoding x-compress Z
AddEncoding x-gzip gz tgz
AddType application/x-tar .tgz
</IfModule>

# =================================================
# Logs
# =================================================
LogLevel warn
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
ErrorLog /usr/local/apache/logs/error_log
CustomLog /usr/local/apache/logs/access_log combined

# =================================================
# Virtual hosts
# =================================================
NameVirtualHost *
<VirtualHost *>
DocumentRoot "/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]"
ServerName "[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]"
ServerAlias "[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]"
ErrorLog logs/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
CustomLog logs/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] combined
</VirtualHost>
<VirtualHost *>
DocumentRoot "/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]"
ServerName "[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]"
ErrorLog logs/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
CustomLog logs/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] combined
</VirtualHost>



تنظيمات ارائه شده در بالا شامل فرمان هايي مي گردد كه جهت فعاليت سرور و امنيت آن مورد احتياج است . دو هاست مجازي وجود دارند كه توسط سرور پشتيباني شده اند :

- [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ] ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])
- [ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

محتواي وب سايت هاي بالا به طور فيزيكي در اين دايركتوري ها وجود دارد :

- /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
- /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]


و هر وب سايت لاگ فايل مخصوص به خود را دارد كه در اين دايركتوري هستند‌:

- /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
- /chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]


اين دايركتوري ها قبل از اينكه سرور آپاچي براي اولين بار اجرا مي شود بايد ايجاد شوند . مالك اين دايركتوري ها بايد به root:sys ست شود و سطح دسترسي به 0755 تغيير يابد .

حال اگر فايل تنظيمات آپاچي را به با نسخه اي كه در اينجا ارائه شد مقايسه كنيم چنين تغييراتي را مي بينيم كه به چندي از آن ها اشاره مي كنم :

تعدادي از ماژول هاي فعال آپاچي كاهش يافت

آپاچي اطلاعاتي بيشتري را در مورد درخواست ها لاگ خواهد نمود

آپاچي فقط دسترسي به فايل و دايركتوري ها را امكان پذير ميسازد كه در فايل تنظيمات مشخص شده است

و ...

قدم بعدي ايجاد يك استارت آپ اسكرپت "apache.sh" است كه محتواي آن بايد :

#!/bin/sh

CHROOT=/chroot/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
PIDFILE=/usr/local/apache/logs/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

echo -n " apache"

case "$1" in
start)
/usr/sbin/chroot $CHROOT $[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
;;
stop)
kill `cat ${CHROOT}/${PIDFILE}`
;;
*)
echo ""
echo "Usage: `basename $0` {start|stop}" >&2
exit 64
;;
esac

exit 0




كه اين اسكرسپت بايد به دايركتوري مربوطه كپي شود كه بستگي به نوع سيستم عامل دارد . مثلا در FreeBSD دايركتوري مربوطه /usr/local/etc/rc.d مي باشد.

نويسنده : PoIsOn-HaCkEr خدا بيامرز