تجربتي ببناء سيرفر [samba+LAMP+ushare+webmin]

سلام عليكم ،،

بالامس انتهيت من تركيب واعداد السيرفر ،، التجربه حلوه ،، واتمنى تستفيدو منها .

المتطلبات :

– جهاز كمبيوتر بـ اي مواصفات .
– نسخة لينوكس (انا افضل استخدام ديبيان وبناتها)،، النسخه المستخدمه في الشرح اوبونتو الخاصه بالخوادم ،، الاصدار الحالي هو 9.10 ولم يتبقى على نزول الاصدار الجديد الا ايام قليله لذلك الخيار لك 😀
– شبكة مكونة من عدة اجهزه مشبوكه عن طريق راوتر .
– خبره بسيطه بالتعامل مع لينوكس او ابونتو تكفي ،، حتى لو كانت عدة اسابيع .

مكونات جهازي :
انتل بنتيوم فور P4
الموذربورد انتل
الرام 1 قيقا 1GB
كرت الشاشه انفيديا 6500
هارد يسك 160 قيقا 160GB
صندوق

بسم الله نبدا .

– الخطوه الأولى : تركيب اوبونتو

النسخة المستخدمه اثناء تركيب هذا السيرفر هي :
Ubuntu Server Edition 9.10

التركيب لن تواجهه اي مشاكل ،، تركيب سلس وواضح وشروحاته كثيره متوفره . لكن هناك خيارات انا افضل ان تقوم بعملها حتى تسهل عليك العمل .

اذا وصلت هذه الخطوة قم بالتعليم على
LAMP
OPENSSH
SAMBA

حتى يقوم بتركيبها الآن .

الان انتهيت من تركيب اوبونتو قم بإعادة الجهاز وادخل على النظام .
ملاحظة : النسخه الخاصه بالخوادم تكون من غير واجهة رسوميه .

انا افضل ان تستخدم النظام من سطر الاوامر ،، مع العلم ان جهازي يستطيع تحمل واجهة كيدي لكن اريد استفيد من الجهاز (المعالج+الرام) والمساحه قدر الامكان .

بعدما انتهيت من تركيب النظام ،، الان نقوم بتثبيت رقم الآيبي المحلي للسيرفر لاني استخدم DHCP وهو يقوم بتوزيع ارقام الايبي بشكل تلقائي على مدى معين .
تستطيع عمل ذلك عن طريق المودم او عن طريق النظام ، انا افضل المودم لانه اسهل ،، المودم لدي من نوع سبيد تاش .

الآن قم بفصل الجهاز وضعه في مكان معين . لان الجهاز بدون واجهه رسوميه لذلك لا تحتاج لشاشه وتستطيع الوصول اليه عن طريق الاجهزه الاخرى بالشبكه . جهازي قمت بتركيبه بالسطح (الدور الثالث) بجوار المودم . كل ماتحتاجه هو الكهرباء + كيبل ايثرنت

صوره للجهاز :

الان السيرفر جاهز وشغال ،، راح يبدأ شغل الاعداد .

قبل ماابدا بشرح الاعدادات وتضبيط السيرفر ،، لازم اشرح كيف تتصل بالسيرفر من الاجهزه الاخرى اللي بالشبكه ماهو معقوله كل مره ابغى انزل برامج او اعدل على شي لازم اركب الشاشه واركب الكيبورد واكتب واضبط و و و ،، عشان كذا راح اشرح كيف تشبك مع السيرفر من الويندوز والاوبونتو .

– الابونتو .
اوبونتو يأتي معها نسخه من openssh الخاصه بالـClient واذا ماكانت موجوده عندك نزلها عن طريق :

[CODE]sudo apt-get install openssh-client[/CODE]

وطريقة الاتصال ،، افتح الترمينال واكتب :/

[CODE]ssh s3v3n@192.168.1.72[/CODE]

وبعدها راح يطلب الباسوورد وبكذا تكون داخل الجهاز .
s3v3n هو اليوزر تبعك مو شرط يكون نفس يوزري 😀
192.168.1.72 ايبي السيرفر بالشبكة عندي ،، اللي ثبته عن طريق المودم ، وكمان مو شرط يكون نفس الايبي تبعي .

– الويندوز .
في الويندوز عن طريق برنامج Putty تستطيع الوصول للجهاز وهذي واجهة البرنامج للتوضيح :

مع التغييرات اللازمه على حسب المتطلبات عندك .. تضغط على open ويفتح لك الجهاز

واعطه اليوزر والباس .

– اعداد خادم الملفات عن طريق سامبا .

سامبا برنامج روعه ،، واول شي راح اشرحه عشان الشباب .

في بداية تنزيلك للنظام ايضا ً اخترنا تنزيل سامبا .. في حال انك نسيت او تستخدم جهازك الحالي كل ماعليك هو تنزيل سامبا من خلال الامر :

[CODE]sudo apt-get install samba[/CODE]

الان لازمك تعمل باسوورد للسامبا ، كل ماعليك عمله كتابة:

[CODE]sudo smbpasswd -a USERNAME[/CODE]

طبعا ً تستبدل الـ USERNAME باليوزر تبعك ،، مثال :

[CODE]sudo smbpasswd -a s3v3n[/CODE]

الان اعمل فولدر عشان المشاركه والكل يقدر يدخله ،،

[CODE]mkdir /home/s3v3n/opendir[/CODE]

كل شي تمام ،، باقي عمل الاعدادات ،، افتح الملف smb.conf

[CODE]sudo nano /etc/samba/smb.conf[/CODE]

واضف :

[CODE][opendir]
path = /home/s3v3n/opendir
available = yes
valid users = s3v3n
read only = no
browsable = yes
public = yes
writable = yes[/CODE]

وخلصنا ! اعمل ريستارت للسامبا :

[CODE]sudo /etc/init.d/samba restart[/CODE]

اقرب جهاز ويندوز عندك بالشبكة ،، وادخل على الشبكة وراح تلاقي السيرفر والمجلد :

– اعداد الـ LAMP

كلمة LAMP هي اختصار لـ Linux, Apache, MySQL, PHP اللي متوفر عندي الآن هو اللينوكس باقي الاباتشي والماي اس كيو ال والبي اتش بي . في البداية ثبتنا LAMP ،، لكن اذا نسيت او مانزلته :

[CODE]sudo apt-get install lamp-server^[/CODE]

اثناء التركيب راح يطلب منك باسوورد لحساب الروت تبع MySQL ادخل له باسوورد واكمل .

بعد ماتنتهي التركيب ،، حتى تتأكد ان الاباتشي تم تركيبه افتح المتصغح واكتب الايبي تبع السيرفر ،، مثال :
http://192.168.1.72/

وراح تطلع لك الصفحه هذي :

معناها ان الاباتشي شغال تمام .

والماي اس كيو ال شغال تمام ،، باقي البي اتش بي ، وعشان تتأكد ان البي اتش بي شغال

اعمل ملف بي اتش بي بالمسار التالي :

[CODE] sudo nano /var/www/info.php[/CODE]

اسم الملف info.php ،، الملف فارغ لانك انشأته جديد ،،

اضف فيه الكود .
[PHP] <?php phpinfo(); ?>[/PHP]الان توجه للمتصفح واكتب اسم الملف بعد ايبي السيرفر ،، مثال:
http://192.168.1.72/info.php

وراح تطلع لك الصفحه هذي :

معناها ان البي اتش بي شغال زي العسل .

باقي شغله ،، وهي اني انا احب استخدم phpMyAdmin عشان ادير قواعد البيانات ومتعود عليها ،، لذلك راح انزلها عندي ،، وتنزيلها بسيط .

[CODE]sudo apt-get install libapache2-mod-auth-mysql phpmyadmin[/CODE]

وراح تطلع لك خيارات ،، وامش معاها ولاتنسى تختار الاباتشي بالضغط على زر المسافه .

بعد ماتنتهي ،، عشان تتأكد من تركيب phpMyAdmin بشكل سليم افتح المتصفح واكتب :
http://192.168.1.72/phpmyadmin/

وراح تطلع لك الصفحه هذي :

وبكذا تكون جهزت الـLAMP من مجاميعه ،، استمتع !

– اعداد التورنت

حرصت على اني استخدم برنامج تورنت من غير واجهه ،، بعدها فكرت في واجهة الويب ،، واحترت بين ثلاث برامج :
Torrentflux
Transmission
Deluge

وكلهم تستطيع استخدامهم عن طريق سطر الاوامر وعن طريق الويب .
جربت التورنت فلكس ،، حلو لكن مااعجبني حيل ،، فيه بطئ ماني عارف ليش . مع العلم انه هو الاسهل تركيب من بينهم . لكن ماانصح فيه .

اما الترانسميشن ،، حاولت انزله لكن تعبت معاه وبالاخيروقفت محاولتي بتركيبه .

وبالاخير قمت بتنزيل الـDeluge وهو الذي استخدمه حاليا ً واجهته تفتح النفس وتركيبه سهل .

ولك حرية الاختيار ،، لكن ساشرح تركيب Deluge .

نبذه عن البرنامج :
برنامج Deluge متوفر على اغلب الانظمة الحديثه ،، ويندوز ، ماك ، لينوكس مبني على الـGTK+ له واجهه رسوميه ،، وايضا ً تستطيع استخدامه عن طريق سطر الأوامر وواجهة الويب (عن طريق المتصفح) .

تركيب البرنامج :

في البداية تحتاج لـ اضافه المصادر اللازمه ،، افتح ملف السورس :

[CODE]sudo nano -w /etc/apt/sources.list[/CODE]

واضف :

[CODE]deb http://ppa.launchpad.net/deluge-team/ppa/ubuntu karmic main[/CODE]

اغلق الملف واحفظه .

قم باضافة المفتاح ،، واعمل تحديث :

[CODE]gpg –keyserver keyserver.ubuntu.com –recv C5E6A5ED249AD24C
gpg –export –armor C5E6A5ED249AD24C | sudo apt-key add -[/CODE]

[CODE]sudo apt-get update[/CODE]

الان نزل البرنامج :

[CODE]sudo apt-get install deluged deluge-webui[/CODE]

الان نضيف يوزر خاص بالبرنامج :

[CODE]sudo adduser –disabled-password –system –home /var/lib/deluge –gecos “SamRo Deluge server” –group deluge
sudo touch /var/log/deluged.log
sudo touch /var/log/deluge-web.log
sudo chown deluge:deluge /var/log/deluge*
[/CODE]

اكتب الاوامر ،، واحد تلو الاخر << متعوب عليها الجمله .

الان نعمل ملف الاعدادات :

[CODE]sudo nano -w /etc/default/deluge-daemon[/CODE]

اضف :

[CODE]# Configuration for /etc/init.d/deluge-daemon
# The init.d ****** will only run if this variable non-empty.
DELUGED_USER=”deluge”

# Should we run at startup?
RUN_AT_STARTUP=”YES”[/CODE]

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

[CODE]sudo nano -w /etc/init.d/deluge-daemon[/CODE]

والان تضع فيه :

[CODE]
#!/bin/sh
### BEGIN INIT INFO
# Provides:          deluge-daemon
# Required-Start:    $local_fs $remote_fs
# Required-Stop:     $local_fs $remote_fs
# Should-Start:      $network
# Should-Stop:       $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-De******ion: Daemonized version of deluge and webui.
# De******ion:       Starts the deluge daemon with the user specified in
#                    /etc/default/deluge-daemon.
### END INIT INFO

# Author: Adolfo R. Brandes
# Modified: Sami Olmari

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC=”Deluge Daemon”
NAME1=”deluged”
NAME2=”deluge-web”
DAEMON1=/usr/bin/deluged
DAEMON1_ARGS=”-d -c /var/lib/deluge -l /var/log/deluged.log -L warning”
DAEMON2=/usr/bin/deluge-web
DAEMON2_ARGS=”-p 9092 -c /var/lib/deluge -l /var/log/deluge-web.log -L warning”
PIDFILE1=/var/run/$NAME1.pid
PIDFILE2=/var/run/$NAME2.pid
PKGNAME=deluge-daemon
******NAME=/etc/init.d/$PKGNAME

# Exit if the package is not installed
[ -x “$DAEMON1” -a -x “$DAEMON2” ] || exit 0

# Read configuration variable file if it is present
[ -r /etc/default/$PKGNAME ] && . /etc/default/$PKGNAME

# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions

if [ -z “$RUN_AT_STARTUP” -o “$RUN_AT_STARTUP” != “YES” ]
then
log_warning_msg “Not starting $PKGNAME, edit /etc/default/$PKGNAME to start it.”
exit 0
fi

if [ -z “$DELUGED_USER” ]
then
log_warning_msg “Not starting $PKGNAME, DELUGED_USER not set in /etc/default/$PKGNAME.”
exit 0
fi

#
# Function that starts the daemon/service
#
do_start()
{
# Return
#   0 if daemon has been started
#   1 if daemon was already running
#   2 if daemon could not be started
start-stop-daemon –start –background –quiet –pidfile $PIDFILE1 –exec $DAEMON1 \
–chuid $DELUGED_USER –user $DELUGED_USER –test > /dev/null
RETVAL1=”$?”
start-stop-daemon –start –background –quiet –pidfile $PIDFILE2 –exec $DAEMON2 \
–chuid $DELUGED_USER –user $DELUGED_USER –test > /dev/null
RETVAL2=”$?”
[ “$RETVAL1” = “0” -a “$RETVAL2” = “0” ] || return 1

start-stop-daemon –start –background –quiet –pidfile $PIDFILE1 –make-pidfile –exec $DAEMON1 \
–chuid $DELUGED_USER –user $DELUGED_USER — $DAEMON1_ARGS
RETVAL1=”$?”
sleep 2
start-stop-daemon –start –background –quiet –pidfile $PIDFILE2 –make-pidfile –exec $DAEMON2 \
–chuid $DELUGED_USER –user $DELUGED_USER — $DAEMON2_ARGS
RETVAL2=”$?”
[ “$RETVAL1” = “0” -a “$RETVAL2” = “0” ] || return 2
}

#
# Function that stops the daemon/service
#
do_stop()
{
# Return
#   0 if daemon has been stopped
#   1 if daemon was already stopped
#   2 if daemon could not be stopped
#   other if a failure occurred

start-stop-daemon –stop –quiet –retry=TERM/30/KILL/5 –user $DELUGED_USER –pidfile $PIDFILE2
RETVAL2=”$?”
start-stop-daemon –stop –quiet –retry=TERM/30/KILL/5 –user $DELUGED_USER –pidfile $PIDFILE1
RETVAL1=”$?”
[ “$RETVAL1” = “2” -o “$RETVAL2” = “2” ] && return 2

rm -f $PIDFILE1 $PIDFILE2

[ “$RETVAL1” = “0” -a “$RETVAL2” = “0” ] && return 0 || return 1
}

case “$1” in
start)
[ “$VERBOSE” != no ] && log_daemon_msg “Starting $DESC” “$NAME1”
do_start
case “$?” in
0|1) [ “$VERBOSE” != no ] && log_end_msg 0 ;;
2) [ “$VERBOSE” != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ “$VERBOSE” != no ] && log_daemon_msg “Stopping $DESC” “$NAME1”
do_stop
case “$?” in
0|1) [ “$VERBOSE” != no ] && log_end_msg 0 ;;
2) [ “$VERBOSE” != no ] && log_end_msg 1 ;;
esac
;;
restart|force-reload)
log_daemon_msg “Restarting $DESC” “$NAME1”
do_stop
case “$?” in
0|1)
do_start
case “$?” in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
echo “Usage: $******NAME {start|stop|restart|force-reload}” >&2
exit 3
;;
esac

:[/CODE]

اعط السكربت التصريح المناسب :

[CODE]sudo chmod 755 /etc/init.d/deluge-daemon[/CODE]

الان نبغى السكربت يعمل اول مايشتغل الجهاز في حال اطفاءه :

[CODE]sudo update-rc.d deluge-daemon defaults[/CODE]

الان شغله :

[CODE]sudo /etc/init.d/deluge-daemon start[/CODE]

الان اتجه للمتصفح واكتب :
http://192.168.1.72:9092/

الباسوورد هو اسم البرنامج :
deluge

ومن اعدادات البرنامج تستطيع تغيرها .

وراح تشاهد واجهة البرنامج ،، صوره للتوضيح :

– اعداد الميديا عن طريق uShare
وهذا شرح لتركيبه :
http://www.linuxac.org/forum/showthread.php?30055

– تركيب Webmin

اذا انت ماترتاح مع النظام بدون واجهة ،، عندك احد الخيارين ،، وهما :

1- تقوم بتركيب واجهة للنظام ،، مثل قنوم ، كيدي ، اكسفي ، فلكس بوكس ، اوبن بوكس . . الخ
2- تركيب الـWebmin

الخيار الاول :

ان احتجت الى قنوم :

[CODE]sudo apt-get install ubuntu-desktop[/CODE]

او كيدي :

[CODE]sudo apt-get install kubuntu-desktop[/CODE]

هذه اشهر الواجهات ،،

الخيار الثاني :

الـWebmin ،، من خلالها تستطيع التحكم في حاجات كثيره بالنظام ،، منها التحكم بحسابات المستخدمين والاباتشي ومشاركة الملفات والـSSH تقريبا ً الواجهه تريح مديري الانظمة .

تركيب Webmin :

انا افضل تركيبه من خلال مدير الحزم ،، ان اردت تستطيع تحميله من موقعهم الرسمي يوجد نسخه خاصه بـ اوبونتو deb.

قبل التركيب ،، ملفات متطلبه :

[CODE]    sudo aptitude install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl libmd5-perl[/CODE]

الان قم بالتعديل على السورس لست :

[CODE]sudo nano /etc/apt/sources.list[/CODE]

واضف :

[CODE]    deb http://download.webmin.com/download/repository sarge contrib[/CODE]

الان تحتاج للمفتاح :

[CODE]    wget http://www.webmin.com/jcameron-key.asc%5B/CODE%5D

[CODE]    sudo apt-key add jcameron-key.asc[/CODE]

الان اعمل تحديث وتركيب للواجهه :

[CODE]    sudo apt-get update[/CODE]

[CODE]    sudo apt-get install webmin[/CODE]

خلصنا !

الان توجه للمتصفح واكتب الايبي تبع السيرفر ،، او اسم السيرفر والبورت 10000 ، مثال
https://192.168.1.72:10000/

من خلال Webmin تستطيع التحكم بسيرفرك بشكل رهيب ،، ومريح ،، الواجهه روعه . وتستطيع استكشافها ،، الواجهه لها نسخه عربيه .

اتمنى الشرح واضح ،، واي استفسار انا جاهز ،،

المصادر :

http://www.howtoforge.com/
http://www.unix-tutorials.com/
http://www.linuxac.org/forum/forum.php
http://www.freelydifferent.com/self-hosting/deluge-torrent-daemon-webui/
http://www.jonathanmoeller.com/screed/?p=1168
http://www.ubuntugeek.com/3171.html
http://samba.org/

Advertisements

3 Responses to تجربتي ببناء سيرفر [samba+LAMP+ushare+webmin]

  1. العصمي ..~ says:

    وااااااااااو ياكابتن .. أخيراً ضبطت السيرفر ..
    أذكر انك كنت ناوي عليها منذو مبطي ..
    امممممممم الف مبروك يالوح ^_*

  2. saleh says:

    جزاك الله خير وكثر الله من أمثالك

    شرح وافي ومفيد ومن زمان أدور على شرح مثل كذا

    الله يجعل هذا في موازين حسناتك .

  3. فيصل says:

    هل اقدر احط لي دومين .. اتمنى ترسلي رسالة على الايميل علشان اقدر اقراها لاهنت ..

    وشكرا على نشر التجربة .. وجاري العمل عليها

اترك رد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s

%d مدونون معجبون بهذه: