यह मार्गदर्शिका आपको ISPConfig ऑटो-इंस्टॉलर का उपयोग करके अपना ISPConfig 3 सिंगल सर्वर सेटअप स्थापित करने में मदद करेगी। यह इंस्टॉलर पुराने परफेक्ट सर्वर गाइड का पालन करता है, लेकिन अधिक मॉड्यूलर है और इसका पालन करना आसान है। यदि आप प्रत्येक सेवा के लिए समर्पित सर्वर के साथ एक मल्टी-सर्वर सेटअप स्थापित करना चाहते हैं, तो देखें उत्तम मल्टीसर्वर निर्देशिका.
यह गाइड डेबियन 12 और 13, उबंटू 22.04 और उबंटू 24.04 के साथ संगत है। यह वर्तमान में x86_64 (उर्फ AMD64) और ARM (ARM64) CPU आर्किटेक्चर का समर्थन करता है। हम होस्टनाम सर्वर1.example.com का उपयोग करेंगे। जहां आवश्यक हो वहां इसे बदलें. गाइड को एक ताज़ा स्थापित और खाली बेस ऑपरेटिंग सिस्टम की आवश्यकता होती है; इसे ऐसे सिस्टम पर उपयोग करने का प्रयास न करें जहां आपने पहले से ही अन्य सेवाएं कॉन्फ़िगर कर रखी हैं।
आवश्यक शर्तें
- ऑपरेटिंग सिस्टम: डेबियन 12 और डेबियन 13, उबंटू 22.04 या उबंटू 24.04।
- इंटेल या एएमडी 64-बिट सीपीयू आर्किटेक्चर (x86_64, जिसे एएमडी64 भी कहा जाता है) या एआरएम (एआरएम64) सीपीयू आर्किटेक्चर।
- एपीटी का उपयोग करके सॉफ़्टवेयर डाउनलोड और इंस्टॉल करने के लिए सिस्टम में इंटरनेट एक्सेस होना चाहिए।
- एक साफ और खाली बेस ओएस इंस्टालेशन से शुरुआत करें। सिस्टम को इंटरनेट से पूरी तरह से एक्सेस किया जाना चाहिए; फ़ायरवॉल के साथ एक्सेस को ब्लॉक न करें, विशेष रूप से LE प्रमाणपत्र जारी करने के लिए पोर्ट 80 और ISPConfig एक्सेस के लिए पोर्ट 8080, साथ ही उस सिस्टम पर आपके द्वारा उपयोग की जाने वाली सभी सेवाओं के लिए पोर्ट। इंस्टॉलेशन के दौरान सॉफ़्टवेयर डाउनलोड और इंस्टॉल करने और DNS के माध्यम से डोमेन नामों को हल करने के लिए सर्वर के पास इंटरनेट एक्सेस भी होना चाहिए।
1. सर्वर में लॉग इन करें
रूट या रन के रूप में लॉग इन करें
su --login
आगे बढ़ने से पहले अपने सर्वर पर रूट उपयोगकर्ता बनने के लिए डेबियन पर क्लिक करें। महत्वपूर्ण: आपको ‘su –login’ या ‘su -‘ का उपयोग करना चाहिए न कि केवल ‘su’ का। अन्यथा, डेबियन आपके PATH वैरिएबल को गलत तरीके से सेट कर देगा।
उबंटू पर, कमांड का उपयोग करें:
sudo -s
रूट उपयोगकर्ता बनने के लिए.
2. होस्टनाम और होस्ट कॉन्फ़िगर करें
आपके सर्वर का होस्टनाम “server1.example.com” जैसा उपडोमेन होना चाहिए। होस्टनाम के रूप में “example.com” जैसे उपडोमेन भाग के बिना डोमेन नाम का उपयोग न करें, क्योंकि इससे बाद में आपके सेटअप में समस्याएँ पैदा होंगी। सबसे पहले, आपको होस्टनाम जांचना होगा /etc/मेजबान और जब आवश्यक हो तो इसे बदल दें। पंक्ति इस प्रकार होनी चाहिए: “आईपी एड्रेस – स्पेस – डोमेन सहित पूर्ण होस्टनाम – स्पेस – उपडोमेन भाग”। हमारे होस्टनाम सर्वर1.example.com के लिए, फ़ाइल इस तरह दिखनी चाहिए (कुछ नियम भिन्न हो सकते हैं; यह होस्टिंग प्रदाता के अनुसार भिन्न हो सकता है):
nano /etc/hosts
127.0.0.1 localhost.localdomain localhost
# This line should be changed to the correct servername:
127.0.1.1 server1.example.com server1
# The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters
फिर /etc/hostname फ़ाइल संपादित करें:
nano /etc/hostname
हमारे मामले में, इसमें केवल उपडोमेन भाग होगा:
server1
अंत में, परिवर्तन लागू करने के लिए सर्वर को रीबूट करें:
systemctl reboot
दोबारा लॉग इन करें और जांचें कि होस्टनाम अब इन कमांड के साथ सही है:
hostname
hostname -f
आउटपुट इस प्रकार होना चाहिए:
root@server1:~$ hostname
server1
root@server1:~$ hostname -f
server1.example.com
आपको अपने DNS प्रदाता के साथ एक DNS रिकॉर्ड भी स्थापित करना होगा जो आपके सर्वर की ओर इंगित करता हो। आपके सार्वजनिक आईपी की ओर इशारा करने वाले उपडोमेन के लिए एक ए (और/या एएएए) रिकॉर्ड होना चाहिए।
3. सिस्टम को अपडेट करें
सिस्टम पैकेज को अद्यतन करने के लिए, कमांड चलाएँ:
apt update && apt upgrade
4. ऑटो-इंस्टॉलर प्रारंभ करें
अब हम ऑटो-इंस्टॉलर चला सकते हैं। मूल सेटअप में निम्नलिखित सॉफ़्टवेयर पैकेज (निश्चित रूप से उनकी निर्भरताएँ) शामिल हैं: Apache2, PHP (संस्करण 5.6 – 8.3), MariaDB, पोस्टफ़िक्स, Dovecot, Rspamd, BIND, जेलकिट, राउंडक्यूब, PHPMyAdmin, मेलमैन, वेबलाइज़र, AWStats और GoAccess। आप इंस्टॉलर को तर्क देकर आसानी से कुछ सुविधाओं का उपयोग न करने या अतिरिक्त सेवाएं स्थापित न करने का विकल्प चुन सकते हैं। उपलब्ध कमांड लाइन विकल्पों के लिए अध्याय 6 देखें।
अपाचे वेब सर्वर के साथ ISPConfig स्थापित करें
अब आप स्क्रिप्ट को तर्कों के साथ चला सकते हैं। उदाहरण के लिए, यदि आप अपाचे वेब सर्वर के साथ एक सामान्य इंस्टॉलेशन और पैसिव एफ़टीपी + अनअटेंडेड अपग्रेड के लिए पोर्ट रेंज चाहते हैं, तो चलाएँ:
wget -O - https://get.ispconfig.org | sh -s -- --use-ftp-ports=40110-40210 --unattended-upgrades
निम्नलिखित चरणों का वर्णन “स्वचालित इंस्टॉलर चलाना” अध्याय में किया गया है।
Nginx वेब सर्वर के साथ ISPConfig स्थापित करें
अब आप स्क्रिप्ट को तर्कों के साथ चला सकते हैं। उदाहरण के लिए, यदि आप Nginx वेब सर्वर के साथ एक सामान्य इंस्टॉलेशन और पैसिव FTP + अनअटेंडेड अपग्रेड के लिए पोर्ट रेंज चाहते हैं, तो चलाएँ:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades
ऑटो-इंस्टॉलर प्रारंभ करें
थोड़ी देर बाद आप देखेंगे:
WARNING! This script will reconfigure your complete server!
It should be run on a freshly installed server and all current configuration that you have done will most likely be lost!
Type 'yes' if you really want to continue:
उत्तर “हाँ” दें और एंटर दबाएँ। इंस्टॉलर अब प्रारंभ हो जाएगा.
जब इंस्टॉलर समाप्त हो जाएगा, तो यह आपको ISPConfig एडमिन और MySQL रूट पासवर्ड निम्नानुसार दिखाएगा:
(INFO) Your ISPConfig admin password is: 5GvfSSSYsdfdYC
(INFO) Your MySQL root password is: kkAkft82d!kafMwqxdtYs
इस जानकारी को अवश्य लिखें क्योंकि बाद में आपको इसकी आवश्यकता पड़ेगी।
5. फ़ायरवॉल को कॉन्फ़िगर करना
आखिरी काम हमारे फ़ायरवॉल को कॉन्फ़िगर करना है।
ISPConfig UI में लॉग इन करें, और सिस्टम -> फ़ायरवॉल पर जाएँ। फिर “नया फ़ायरवॉल रिकॉर्ड जोड़ें” पर क्लिक करें।
सामान्य सेटअप के लिए यह इस तरह दिखेगा:
टीसीपी:
20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081
यूडीपी:
53
प्रत्येक सेवा के लिए आवश्यक पोर्ट हैं:
वेब: 20, 21, 22, 80, 443 और 40110:40210 (सभी टीसीपी, कोई यूडीपी नहीं)
मेल: 25, 110, 143, 465, 587, 993 और 995 (सभी टीसीपी, कोई यूडीपी नहीं)
डीएनएस: 53 (टीसीपी और यूडीपी)
पैनल: 8080 और 8081 (सभी टीसीपी, कोई यूडीपी नहीं)
आपका सर्वर अब सेट हो गया है और उपयोग के लिए तैयार है। आप सदस्यता ले सकते हैं https://server1.example.com:8080
6. उन्नत विकल्प
सेटअप को ठीक करने के लिए ऑटो-इंस्टॉलर के पास कई कमांड-लाइन विकल्प हैं।
आप सभी तर्क इसके साथ देख सकते हैं:
wget -O - https://get.ispconfig.org | sh -s -- --help
उदाहरण के लिए, आप Apache और Nginx वेब सर्वर के बीच चयन कर सकते हैं और सिस्टम पर कौन सी सेवाएँ स्थापित की जाएंगी। कमांड लाइन तर्क हैं:
Usage: ispc3-ai.sh () (...) This script automatically installs all needed packages for an ISPConfig 3 setup using the guidelines from the "Perfect Server Setup" howtos on www.howtoforge.com. Possible arguments are: --help Show this help page. --debug Enable verbose logging (logs each command with the exit code). --channel Choose the channel to use for ISPConfig: --channel= "stable" is the latest ISPConfig release available on www.ispconfig.org "dev" is the latest dev-branch from the ISPConfig git repository: https://git.ispconfig.org/ispconfig/ispconfig3/tree/develop The dev channel might contain bugs and less-tested features and should only be used in production by very experienced users. --lang Use language for ISPConfig installation. Specify with --lang=en|de (only en (English) and de (German) supported currently). --interactive Don't install ISPConfig in non-interactive mode. This is needed if you want to use expert mode, e.g. to install a slave server that shall be integrated into an existing multiserver setup. --use-nginx Use nginx webserver instead of apache2. --use-amavis Use amavis instead of rspamd for mail filtering. --use-unbound Use unbound instead of bind9 for local resolving. Only allowed if --no-dns is set. --use-php Use specific PHP versions, comma separated, instead of installing multiple PHP, e.g. --use-php=7.4,8.0 (5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2 and 8.3 available). --use-php=system disables the sury repository and just installs the system's default PHP version. Do not use system option on Debian 13 as it lacks the PHP imap package. --use-php while omitting the argument, uses all versions. --use-ftp-ports This option sets the passive port range for pure-ftpd. You have to specify the port range separated by hyphen, e.g. --use-ftp-ports=40110-40210. If not provided the passive port range will not be configured. --use-certbot Use Certbot instead of acme.sh for issuing Let's Encrypt certificates. Not advised unless you are migrating from an old server that uses Certbot. --no-web Do not use ISPConfig on this server to manage webserver setting and don't install nginx/apache or pureftpd. This will also prevent installing an ISPConfig UI and implies --no-roundcube as well as --no-pma. --no-mail Do not use ISPConfig on this server to manage mailserver settings. This will install postfix for sending system mails, but not dovecot and not configure any settings for ISPConfig mail. It implies --no-mailman. --no-dns Do not use ISPConfig on this server to manage DNS entries. Bind will be installed for local DNS caching / resolving only. --no-local-dns Do not install local DNS caching / resolving via bind. --no-firewall Do not install ufw and tell ISPConfig to not manage firewall settings on this server. --no-roundcube Do not install roundcube webmail. --roundcube Install Roundcube even when --no-mail is used. Manual configuration of Roundcube config is needed. --no-pma Do not install PHPMyAdmin on this server. --no-mailman Do not install Mailman mailing list manager. --no-quota Disable file system quota. --no-ntp Disable NTP setup. --no-jailkit Do not install jailkit. --no-ftp Do not install pure-ftpd server. --monit Install Monit and set it up to monitor installed services. Supported services: Apache2, NGINX, MariaDB, pure-ftpd-mysql, php-fpm, ssh, named, Postfix, Dovecot, rspamd. --monit-alert-email Set up alerts for Monit to be sent to given e-mail address. e.g. (email protected). --ssh-port Configure the SSH server to listen on a non-default port. Port number must be between 1 and 65535 and can not be in use by other services. e.g. --ssh-port=64. --ssh-permit-root Configure the SSH server whether or not to allow root login: --ssh-permit-root= , e.g. --ssh-permit-root=without-password. --ssh-password-authentication Configure the SSH server whether or not to allow password authentication: --ssh-password-authentication= , e.g. -ssh-password-authentication=no. --ssh-harden Configure the SSH server to have a stronger security config. --unattended-upgrades Install UnattendedUpgrades. You can add extra arguments for automatic cleanup and automatic reboots when necessary: --unattended-upgrades=autoclean,reboot (or only one of them). --i-know-what-i-am-doing Prevent the autoinstaller to ask for confirmation before continuing to reconfigure the server.
उदाहरण के लिए, Apache के बजाय Nginx के साथ ‘परफेक्ट सर्वर’ जैसा सेटअप स्थापित करने के लिए, इस कमांड का उपयोग करें:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --use-ftp-ports=40110-40210 --unattended-upgrades
या ईमेल और DNS सेवाओं के बिना Nginx वेब सर्वर स्थापित करने के लिए:
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail --use-ftp-ports=40110-40210 --unattended-upgrades
7. अंतिम रूप देना
आपका सेटअप अब पूरा हो गया है!
आप हमारा मैनुअल खरीदकर ISPConfig का समर्थन कर सकते हैं: https://www.ispconfig.org/documentation/
निम्नलिखित लिंक आगे के सेटअप के लिए कुछ मूल्यवान ट्यूटोरियल/पॉइंटर्स हैं:
यदि आपके कोई प्रश्न हैं, तो उनसे पूछें मंच.
8. त्रुटि की स्थिति में डिबगिंग
यदि इंस्टॉलेशन के दौरान कुछ गलत हो जाता है, तो आप इसे जोड़कर प्रक्रिया को डीबग कर सकते हैं — डिबग इंस्टॉल कमांड के लिए कमांड लाइन ध्वज। यह एक लॉग फ़ाइल लिखेगा
/tmp/ispconfig-ai/var/log/ispconfig.log
–इंटरैक्टिव कमांड-लाइन विकल्प इंस्टॉलेशन त्रुटि का कारण प्रकट करने में भी मदद कर सकता है।
9. वर्चुअल मशीन के रूप में डाउनलोड करें
यह सेटअप हाउटोफोर्ज ग्राहकों के लिए ओवीए/ओवीएफ प्रारूप (वीएमवेयर और वर्चुअलबॉक्स के साथ संगत) में वर्चुअल मशीन डाउनलोड के रूप में उपलब्ध है। वर्चुअल मशीन डेबियन 12 पर आधारित है और अपाचे को वेब सर्वर के रूप में उपयोग करती है।
वीएम के लिए पंजीकरण विवरण
- रूट पासवर्ड है: हाउटोफोर्ज
- ISPConfig “एडमिन” उपयोगकर्ता का पासवर्ड है: हाउटोफोर्ज
- एक अन्य शेल उपयोगकर्ता है जिसका नाम “एडमिनिस्ट्रेटर” और पासवर्ड है: हाउटोफोर्ज
- MySQL रूट पासवर्ड है: 7s8EtDL1QhorSaeHhnRh
कृपया पहले लॉगिन पर सभी पासवर्ड बदलें।
- वीएम का आईपी पता 192.168.0.100 है
