اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

راه اندازی FTP Server در لینوکس CentOS، RHEL 6.5/6.4/6.3

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    راه اندازی FTP Server در لینوکس CentOS، RHEL 6.5/6.4/6.3

    vsftpd (Very Secure File Transport Protocol Daemon) یک سرور FTP امن و سریع برای سیستم های Unix/Linux می باشد. در این مقاله، نحوه ی تنظیمات یک سرور FTP اولیه را با استفاده از vsftpd برروی CentOS 6.5 خواهیم دید. این دستورالعمل همچنین بر روی تمامی نسخه های RHEL CentOS، Scientific Linux 6.x کار خواهد کرد.

    در محیط آزمایشی من hostname و IP به صورت server.unixmen.local و 192.168.1.101/24 می باشند. این مقدارها را در سناریو ی خود تغییر دهید.


    نصب vsftpd

    تمام دستورات با کاربر ‘root’ اجرا خواهند شد. دستور زیر را در ترمینال برای نصب پکیج vsftpd اجرا کنید:
    کد PHP:
     # yum install vsftpd ftp -y 

    پیکربندی vsftpd

    فایل پیکربندی vsftpd را باز کنید. /etc/vsftpd/vsftpd.conf،
    کد PHP:
     # vi /etc/vsftpd/vsftpd.conf 
    خطوط زیر را پیدا کنید و تغییرات را همانند زیر اعمال کنید:
    کد PHP:
    [...]
    ## Set to "NO" ##
    anonymous_enable=NO
    ## Uncomment ##
    ascii_upload_enable=YES
    ascii_download_enable
    =YES
    ## Uncomment - Enter your Welcome message - This is optional ##
    ftpd_banner=Welcome to UNIXMEN FTP service.
    ## Add at the end of this  file ##
    use_localtime=YES 
    سرویس vsftpd را استارت کنید و آن را در boot سیستم قرار دهید که بعد از هر بار ریست شدن سرور به صورت اتوماتیک اجرا شود :
    کد PHP:
    # service vsftpd start
    # chkconfig vsftpd on 

    ایجاد کاربران FTP

    به صورت پیش فرض کاربر root اجازه ی لاگین به سرور ftp را برای اهداف امنیتی ندارد. بنابراین اجازه دهید کاربری به نام "sk" برای تست با پسورد "centos" ایجاد کنیم.
    کد PHP:
    # useradd sk
    # passwd sk 

    اتصال به سرور FTP

    حالا به ما اجازه دهید برای اتصال به سرور FTP با کاربر “sk” تلاش کنیم.
    کد PHP:
    # ftp 192.168.1.101
    Connected to 192.168.1.101 (192.168.1.101).
    220 Welcome to UNIXMEN FTP service.
    Name (192.168.1.101:root): sk
    331 Please specify the password
    .
    Password:
    500 OOPScannot change directory:/home/sk
    Login failed
    .
    ftp
    احتمالا شما با خطایی شبیه به زیر مواجه می شوید.
    کد PHP:
    500-OOPScannot change directory 
    این به این دلیل است که SELinux کاربر را برای لاگین به سرور ftp محدود می کند. بنابراین باید مقادیر Boolean (مقادیری با جواب های True & False) در SELinux را برای سرویس FTP تغییر دهیم.
    کد PHP:
     # setsebool -P ftp_home_dir on 
    حالا مجددا برای لاگین به سرور FTP تلاش کنید:
    کد PHP:
    # ftp 192.168.1.101
    Connected to 192.168.1.101 (192.168.1.101).
    220 Welcome to UNIXMEN FTP service.
    Name (192.168.1.101:root): sk
    331 Please specify the password
    .
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp
    حالا شما قادر خواهید بود بدون هیچ مشکلی به سرور FTP وصل شوید.


    پیکربندی های سمت کلاینت

    به من اجازه دهید از سیستم کلاینت Ubuntu خود به سرور FTP وصل شوم.
    کد PHP:
    ftp 192.168.1.101
    ftp
    connectNo route to host
    ftp

    شما ممکن است خطایی شبیه “ftp:connect:No route to host” ببینید. برای حل این مشکل اجازه دهید پورت پیش فرض ftp را از طریق فایروال یا روتر باز کنیم. در سمت سرور دستورا ت زیر را انجام دهید.

    فایل /etc/sysconfig/iptables را ویرایش کنید.
    کد PHP:
    # vi /etc/sysconfig/iptables 
    خطوط زیر را اضافه کنید.
    کد PHP:
    [...]
    -
    A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
    [...] 
    فایل را ذخیره کرده و خارج شوید. و iptables را ریستارت کنید.
    کد PHP:
    # service iptables restart 
    حالا مجددا از سیستم کلاینت خود برای لاگین به سرور FTP تلاش کنید.
    کد PHP:
    ftp 192.168.1.101
    Connected to 192.168.1.101
    .
    220 Welcome to UNIXMEN FTP service.
    Name (192.168.1.101:sk): sk
    331 Please specify the password
    .
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp
    کارکردن از طریق خط فرمان ممکن است مقداری برای تازه کارها دشوار باشد. بنابراین اجازه دهید یک نرم افزار کلاینت FTP گرافیکی به نام Filezilla را برای انجام راحتتر کارها نصب کنیم:
    کد PHP:
    sudo apt-get install filezilla 
    برای سیستم های RHEL بیس، شما می توانید filezilla را با استفاده از دستور زیر نصب کنید:
    کد PHP:
    # yum install filezilla 
    کلاینت Filezilla را از سیستم خود اجرا کنید. نام سرور FTP خود hostname و یا IP Address، username، password و شماره پورت را وارد کنید. برروی “Quickconnect” برای لاگین کلیک کنید.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	FileZilla_002.jpg
نمایش ها:	1
اندازه:	97.0 KB
شناسه:	21351

    Probably شما با خطای زیر مواجه خواهید شد.
    کد PHP:
    Error:    Connection timed out
    Error
    :    Failed to retrieve directory listing 
    برای خلاص شدن از شر این خطا، راه حل های زیر را دنبال کنید. در بیشتر موارد راه حل 2 کار خواهد کرد.

    راه حل 1 :
    1. در کلاینت Filezilla خود به قسمت Edit -> Settings -> FTP ->Active Mode بروید.
    در تب Active Mode اطمینان حاصل کنید که گزینه ی “Ask your operating system for the external ip address” انتخاب شده باشد.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	Settings_003.jpg
نمایش ها:	1
اندازه:	69.0 KB
شناسه:	21352

    سپس به قسمت Edit -> Settings -> FTP ->Passive Mode بروید. گزینه ی “Fall back to active mode” را انتخاب کنید و برروی Ok کلیک کنید.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	Settings_004.jpg
نمایش ها:	1
اندازه:	36.0 KB
شناسه:	21353

    در اینجا ممکن است در بعضی موارد (مثلا در کلاینت سیستم عامل ویندوز) پیغام خطا نمایش داده نشود.


    راه حل 2 :

    اگر مشکل هنوز پابرجاست، به سرور FTP خود رفته و فایل “/etc/sysconfig/iptables-config” را ویرایش کنید.
    کد PHP:
    # vi /etc/sysconfig/iptables-config 
    خط IPTABLES_MODULES= ” “ را پیدا کنید و این را به IPTABLES_MODULES=”ip_conntrack_ftp” تغییر دهید:
    کد PHP:
    # Load additional iptables modules (nat helpers)
    #   Default: -none-
    # Space separated list of nat helpers (e.g. 'ip_nat_ftp ip_nat_irc'), which
    # are loaded after the firewall rules are applied. Options for the helpers are
    # stored in /etc/modprobe.conf.
    IPTABLES_MODULES="ip_conntrack_ftp"
    [...] 
    فایل را ذخیره کرده و iptables را ریستارت کنید:
    کد PHP:
    # service iptables save
    # service iptables restart 
    اکنون دوباره از طریق Filezilla امتحان کنید، همانطور که میبینید کار خواهد کرد.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	FileZilla_005.jpg
نمایش ها:	1
اندازه:	99.7 KB
شناسه:	21354


    دسترسی به FTP server از طریق مرورگر

    شما می توانید به FTP server از طریق مرورگر کلاینت خود دسترسی داشته باشید. آدرس ftp://ftp-server-ip-address را در مرورگر خود وارد کنید و username و password خود را وارد نمایید.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	Ubuntu-Start-Page-Mozilla-Firefox_006.jpg
نمایش ها:	1
اندازه:	52.1 KB
شناسه:	21355

    حالا شما می توانید محتویات سرور FTP خود را ببینید.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	Index-of-ftp-192.168.1.101-Mozilla-Firefox_007.jpg
نمایش ها:	1
اندازه:	45.2 KB
شناسه:	21356


    لاگین به عنوان کاربر ویژه
    اگر شما می خواهید به عنوان کاربر ویژه لاگین کنید ، آدرس را به صورت ftp://username@FTP-Server-IP-Address در مرورگر تایپ کنید. سپس از شما پسورد کاربر مورد نظر را درخواست میکند، پسورد را وارد کنید و در نهایت شما وصل خواهید شد. برای مثال، به ما اجازه دهید کاربر دیگری به نام “kumar” با پسورد “centos” ایجاد کنیم:
    کد PHP:
    # useradd kumar
    # passwd kumar 
    حالا مرورگر خود را باز کنید و به آدرس ftp://kumar@192.168.1.200 بروید. پسورد را برای کاربر kumar وارد کنید.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	New-Tab-Mozilla-Firefox_009.jpg
نمایش ها:	1
اندازه:	41.0 KB
شناسه:	21357

    حالا شما قادر خواهید بود به سرور FTP با کاربر kumar لاگین کنید.

    برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	Index-of-ftp-kumar@192.168.1.101-Mozilla-Firefox_010.jpg
نمایش ها:	1
اندازه:	47.0 KB
شناسه:	21358

    اکنون شما قادر خواهید بود که از سرویس FTP استفاده کنید.

    موفق باشید.
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 06-07-2016, 04:50 PM.
    اینستاگرام انجمن لینوکس ایران : https://www.instagram.com/iranlinuxforum

    #2
    باسلام خیلی اموزش خوب و مفیدی بود
    اما هنگام ساخت یوزر و پاس من یک یوزر به اسم هاست و پاس با علی ساختم بعد ساخت پاس این خط نمایش داده شد
    passwd: Unknown user name 'ali'.

    اینکه میگه پاس من نشناخته و یوزر من علی در حالی که پاس من علی بود
    اصلا نتونستم بهش منتصل بشم
    ارور یوزر و پاس اشتباه داد
    لطفا راهنمایی کنید با تشکر

    سوال دوم از این روش می تونم سرور سی پینل تو قسمت بک اپ این یوزر و پاس بدم که بصورت خودکار فایل های بک اپ رو روی این سرور بگیره ؟
    اگر بخواهیم چند فولدر مختلف بسازیم که هرکدومشون یوزر و پاس جدا داشته باشه که بتونیم چندین وی پی اس سی پینل رو بک اپش رو بصورت خودکار اونجا سینک کنیم چطور

    کامنت


      #3
      شما اگر یوزری به اسم host درست کردید برای پسورد این یوزر باید دستور passwd host رو بزنین و بعدش از شما پسوردمیخواد
      ولی گویا شما زدین passwd ali و اررور به شما میگه که یوزری به اسم علی وجود نداره

      سوال دوم رو من به درستی متوجه نشدم ولی از اونجایی که با موضوع متفاوته حتما اون رو در یه پست جدید مطرح کنید .
      Instagram : https://www.instagram.com/iranlinuxforum

      Voip Trainer - Asterisk - Elastix - Agi Programming- NewRock

      Voip Expert :ASTERISK-ELASTIX-NewRock Certified-With Experience of Working With
      Sangoma-Digium-Openvox-Synway-Atcom-Quintum Tenor-Polycom-Yealink-Rtx-Snom
      Cisco Collaboration - CME-CUCM-CUPs-CUC-WEBEX
      LPI ( Fundamental - LPI1 and LPI2 ) - Monitoring: ZABBIX-VOIPMONITOR-NAGIOS - CCNA

      Linkedin Profile : https://www.linkedin.com/in/masuma-vahid-26b17b66/

      کامنت

      درباره انجمن منطقه لینوکسی ها

      انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

      شبکه های اجتماعی
      در حال انجام ...
      X