• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • linux服務器快速架站指導

    發表于:2007-07-02來源:作者:點擊數: 標簽:
    這里以為實例,指導在以服務器模式安裝redhat以后,如何以最快的速度建設一個如同的服務器。在這里網站服務器上運行有以下服務器軟件:Ftp、DNS、WWW、Mysql、Sendmail。 服務器安全 安裝完Linux服務器以后,首先要對服務器進行初步的安全設置,一般來講要考

    這里以為實例,指導在以服務器模式安裝redhat以后,如何以最快的速度建設一個如同的服務器。在這里網站服務器上運行有以下服務器軟件:Ftp、DNS、WWW、Mysql、Sendmail。

    服務器安全

    安裝完Linux服務器以后,首先要對服務器進行初步的安全設置,一般來講要考慮下面這些安全問題:安裝服務器結束以后,缺省的各種服務器都是打開的,所以,首先需要關閉那些不需要的服務,因為這些服務可能會對系統安全造成威脅。首先需要關閉以下服務:finger、talk、ntalk、shell、login、pop3、tftp、linuxconf、ftp、telnet。這些服務的特點是他們都是由inetd進程啟動的,也就是說這些服務并不直接啟動,而是有inetd代其監聽自己的服務端口,當有服務請求到來以后,inetd才會啟動真正的服務進程,處理請求。而inetd的配置文件/etc/inetd.conf則指定了哪些服務需要從inetd來啟動。因此如果需要關閉不需要的服務則應該編輯該文件,在相應的服務前加上注釋符號 “#”例如,需要關閉finger服務,將:

    finger stream tcp   nowait nobody /usr/sbin/tcpd in.finger

    修改為:

    # finger stream tcp   nowait nobody /usr/sbin/tcpd in.finger

    對其他的服務可以采取同樣的措施。

        而對于那些不是從inetd啟動的服務,則通過命令來關閉,例如需要關閉sendmail服務,則:

        /etc/rc.d/init.d/sendmail stop

    然后再設置其不在系統啟動時啟動:

        chkconfig –level 12345 sendmail off

    也可以使用ntsysv命令來設定是否自啟動某個服務。

        一般來講,服務器上應當只啟動必須的服務,對于那些不需要的服務,必須關閉??梢允褂妹頽etstat –l –n來查看本機開放了那些服務:

    Active Internet connections (only servers)

    Proto Recv-Q Send-Q Local Address      Foreign Address     State

    tcp    0   0 ins:domain       *:*           LISTEN

    tcp    0   0 ns:domain        *:*           LISTEN

    tcp    0   0 www:domain       *:*           LISTEN

    tcp    0   0 *:www          *:*           LISTEN

    tcp    0   0 *:ftp          *:*           LISTEN

    udp    0   0 *:1036         *:*

    udp    0   0 ins:domain       *:*

    udp    0   0 ns:domain        *:*

    udp    0   0 www:domain       *:*

    raw    0   0 *:icmp         *:*           7

    raw    0   0 *:tcp          *:*           7

    Active UNIX domain sockets (only servers)

    Proto RefCnt Flags    Type    State     I-Node Path  

    從上面的輸出可以看到,這臺機器開放了dns、www、ftp、1036、icmp、tcp端口,可以查看/etc/service來確定數字表示的端口具體都是什么服務。

        這里關閉了telnet服務,那么如何登錄服務器進行配置呢?這里推薦使用SSH,因為telnet協議是采用明文方式傳輸密碼和用戶名,因此這些信息可能在傳輸過程中被竊聽,而SSH是telnet的一種替代品,它的服務器和客戶端之間的所有數據傳輸都進行了加密,因此提高了安全性。

        若某個系統帳號用戶不允許登錄系統,而只允許其修改自己的密碼,則需要修改起shell,也就是編輯/etc/passwd文件。舉例如下,若不允許ideal登錄系統則需要編輯passwd文件,修改:

    ideal:x:500:500:ideal:/home/ideal:/bin/bash

    為:

    ideal:x:500:500:ideal:/home/ideal:/usr/bin/passwd

    這樣當該用戶登錄進入系統以后,只能修改自己的密碼,修改完畢以后,系統會自動斷開連接。

    23.2 設置DNS服務器

        我們首先為服務器設置dns服務器。這里假定的服務器ip地址為202.99.11.120,該服務器除了要解析linuxaid.com.cn的區信息以外,還要解析longshine.com.cn的區信息。也就是說本機要負責解析兩個區的域名信息。這里假設的IP地址是202.99.12.120。

    第一步:
        編輯系統已經存在的/etc/resolv.conf文件,設置內容如下:

    domain linuxaid.com.cn.

    nameserver 202.99.11.120

    該文件定義了本地域名和缺省域名服務器,可以根據自己的實際情況修改該文件。

    第二步:
        編輯系統已經存在的/etc/named.conf文件,初始內容為:

    options {

        directory \"/var/named\";

    };

    zone \".\" {

        type hint;

        file \"named.ca\";

    };

    zone \"0.0.127.in-addr.arpa\" {

        type master;

        file \"named.local\";

    };

    修改內容如下:

    options {

        directory \"/var/named\";

    };

    zone \".\" {

        type hint;

        file \"named.ca\";

    };

    zone \"linuxaid.com.cn\"{

        type master;

        file \"linuxaid.com.cn\";

    };

    zone \"longshine.com.cn\"{

        type master;

        file \"longshine.com.cn \";

    };

    zone \"0.0.127.in-addr.arpa\"{

        type master;

        file \"named.local\";

    };

    zone “12.99.202.in-addr.arpa\"{

        type master;

        file \"12.99.202\";

    };

    zone “11.99.202.in-addr.arpa\"{

        type master;

        file \"11.99.202\";

    };

    其中,type指定了該域的性質,hint指根域,master表示本機對該域是權威的主域名服務器。

    第三步:
        創建/var/named下的名為linuxaid.com.cn文件內容如下:

    @        IN   SOA   ns. linuxaid.com.cn.  root. linuxaid.com.cn. (

                2000080701 ; serial

                28800 ; refresh

                7200 ; retry

                604800 ; expire

                86400 ; default_ttl

                )

    @             IN     A      202.99.11.120

    @             IN     NS   ns. linuxaid.com.cn.

    @             IN     MX   10 mail. linuxaid.com.cn.

    localhost        IN     A    127.0.0.1

    www        IN     A      202.99.11.120

    mail      IN     A       202.99.11.120

    ns             IN     A      202.99.11.120

    ftp            IN     A      202.99.11.120

    該文件是linuxaid.com.cn的域數據信息文件,其中定義了各種服務器的IP vs 域名的對應信息。其中:

    @             IN     A   202.99.11.120

    一行定義域名linuxaid.com.cn對應的IP地址為201.99.11.120,當對linuxaid.com.cn進行通常的域名解析(這里指不是進行MX—郵件網關域名解析)時將會返回IP地址202.99.11.120的應答。

    第四步:
        創建/var/named目錄下的名為longshine.com.cn文件內容如下:

    @        IN   SOA   ns. longshine.com.cn.  root. longshine.com.cn. (

                2000080701 ; serial

                28800 ; refresh

                7200 ; retry

                604800 ; expire

                86400 ; default_ttl

                )

    @             IN     A   202.99.12.120

    @             IN     NS   ns. longshine.com.cn.

    @             IN     MX   10 longshine.com.cn.

    localhost        IN     A    127.0.0.1

    www        IN     A      202.99.12.120

    mail      IN     A       202.99.12.120

    ns             IN     A      202.99.12.120

    ftp            IN     A      202.99.12.120

    該文件是longshine.com.cn的域數據信息文件,其中定義了各種服務器的IP vs 域名的對應信息。

    第五步:
        創建/var/named目錄下的名為named.local的文件內容如下:

    @        IN   SOA   localhost.   root.localhost. (

                1997022700 ; serial

                28800 ; refresh

                14400 ; retry

                3600000 ; expire

                86400 ; default_ttl

                )

    @           IN   NS   localhost.

    1         IN   PTR   localhost.

    該文件定義了本地回路的域名反向解析信息。

    第五步:
        創建/var/named目錄下的名為11.99.202的文件,內容如下:

    @        IN   SOA   ns.linuxaid.com.cn.  root.linuxaid.com.cn. (

                2000080501 ; serial

                28800 ; refresh

                7200 ; retry

                604800 ; expire

                86400 ; default_ttl

                )

    @        IN   NS   ns.linuxaid.com.cn.

    ;

    ;    SERVER SECTION

    ;

    120       IN   PTR        .

    120       IN   PTR        mail.linuxaid.com.cn.

    120       IN   PTR        ns.linuxaid.com.cn.

    120       IN   PTR        .

    該文件定義了202.99.11網絡的域名反向解析信息。

    第六步:
        創建/var/named目錄下的名為12.99.202的文件內容如下:

    @        IN   SOA   ns.longshine.com.cn.  root.longshine.com.cn. (

                2000080501 ; serial

                28800 ; refresh

                7200 ; retry

                604800 ; expire

                86400 ; default_ttl

                )

    @        IN   NS   ns.longshine.com.cn.

    ;

    ;    SERVER SECTION

    ;

    120       IN   PTR        .

    120       IN   PTR        mail.longshine.com.cn.

    120       IN   PTR        ns.longshine.com.cn.

    120       IN   PTR        .

    該文件定義了202.99.12網絡的域名反向解析信息。

    啟動
    啟動dns服務器可以使用命令:ndc start,若輸出結果為”new pid is 2317”,若輸出錯誤,則需要查看上面的配置文件是否正確設置。這時,使用命令”ps ax|grep named”    應該輸出:

    2317 ?    S   0:00 /usr/sbin/named

    2319 pts/0  S   0:00 grep named

    停止dns服務器進程的命令為:ndc stop。

    也可以使用命令/etc/rc.d/init.d/named start|stop來啟動或關閉某個服務。

    若需要在啟動時自動啟動DNS服務器,則使用命令:

        /sbin/chkconfig –level 35 named on

    若需要關閉自動啟動DNS服務器,則使用命令:

        /sbin/chkconfig –level 35 named off

    測試:
        啟動DNS服務器以后,使用命令nslookup命令進行測試:

           [root@www /]nslookup

    Default Server: ns.linuxaid.com.cn

    Address: 202.99.11.120

           >www

    Server: ns.linuxaid.com.cn

    Address: 202.99.11.120

     

    Name:  

    Address: 202.99.11.120

           >set q=mx

           >linuxaid.com.cn

    > set q=mx

    > plagh.com.cn

    Server: ns.linuxaid.com.cn

    Address: 202.99.11.120

     

    linuxaid.com.cn  preference = 10, mail exchanger = mail. linuxaid.com.cn

    linuxaid.com.cn  nameserver = ns linuxaid.com.cn

    mail. linuxaid.com.cn    internet address =202.99.11.120

    ns. linuxaid.com.cn internet address =202.99.11.120

    >exit

    若測試結果和上面的一樣,則說明DNS服務安裝成功。

    19.2 設置FTP服務器

    只要成功地以服務器模式安裝了redhat,ftp服務器就應該已經正常的在運行了,在本機,使用命令測試:

        ftp localhost

    若顯示連接成功,則說明ftp服務器已經成功安裝并且運行正常。若連接時顯示:

    ftp: connect: Connection refused

    ftp>

    則說明ftp服務沒有開放,則需要編輯/etc/inetd.conf文件,確保有如下的內容:

    ftp   stream tcp   nowait root  /usr/sbin/tcpd in.ftpd -l –a

    相反的,若希望關閉ftp服務器,則需要在上面一行的內容前面添加#,將其注釋掉,然后查找inetd進程的進程號,

    ps ax|grep inetd

    353 ?    S   0:00 inetd

    作說明inetd的進程號為353,然后kill –HUP 353,就可以關閉ftp服務器了。

        下面討論這樣一種情況,現在有一個目錄為/www/htdocs/developer,希望用戶user1能讀寫該目錄,但是其不能telnet進入系統,而user1的主目錄為/home/user1。這種需求主要是滿足多個管理員對網站的不同部分進行管理,但是又不允許其通過telnet服務登錄網站,只允許其將內容ftp到網站上。這就需要添加一個組,這里隨便定義為developer組:

           /usr/sbin/groupadd developer

    然后將user1添加到該組內:

           /usr/sbin/usermod –G developer user1

    然后修改/www/htdocs/developer屬于developer組:

           chgrp –R developer /www/htdocs/developer

    最后,設置該目錄為developer完全控制:

           chmod -R 775 /www/htdocs/developer

    這樣/www/htdocs/developer就屬于developer組所有,并且完全可以由屬于developer組的用戶控制。

    19.3 安裝設置mysql服務器

        需要從下載最新版本,目前最新版本是3.23。這里主要討論以二進制包的方式安裝Mysql。

    首先從mysql主頁下載mysql-3.23.24-beta-pc-linux-gnu-i686.tar.gz到/usr/src目錄下,然后運行命令:

           [root@www /]# tar xvfz mysql-3.23.24-beta-pc-linux-gnu-i686.tar.gz

    解壓發布,然后使用命令”cd mysql-3.23.24-beta”進入mysql的目錄,運行:

           [root@www /]# ./scripts/mysql_install_db

    就會實現mysql的缺省安裝,缺省是安裝在/usr/local/mysql目錄下,該目錄下包含了mysql的所有的lib庫,可執行文件等等。

        下面使用mysql的客戶端來測試mysql是否正常:

           [root@www /]# mysql –u root

    Welcome to the MySQL monitor. Commands end with ; or g.

    Your MySQL connection id is 61 to server version: 3.23.22-beta

     

    Type \@#help\@# for help.

     

    mysql>

    缺省安裝情況下mysql有一個root用戶(注和系統的root用戶沒有直接關系),該數據庫用戶具有對整個庫的讀寫權限,而且root用戶是沒有任何密碼的,所以首先需要為該用戶添加密碼,。在mysql提示符下輸入如下SQL語句:

    \@#UPDATE user SET Password = PASSWORD (\@#yourpassword\@#)\@#

        \@#WHERE user = \@#root\@#;\@#

        \@#FLUSH PRIVILEGES;\@#

    這樣,就實現了對root用戶增加密碼的任務,現在使用quit命令退出mysql,然后重新連接mysql服務器就需要指定密碼信息:

    [root@www /]# mysql –u root –pyourpasswd

    然后才能連接mysql服務器。

    但是一般都推薦添加一個非root的而具有root的所有權限的數據庫用戶,因此使用下面的SQL語句實現添加一個具有root權限的名為ideal的用戶:

    \@#INSERT INTO users\@#

    \@#VALUES (\@#localhost\@#,\@#ideal\@#,\@#idealsppasswd\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#,\@#y\@#);\@#

    這樣,你就完成了在本系統上安裝Mysql服務器的任務,具體的權限設置及如何建庫、如何建表、如何訪問庫數據,請參考mysql的手冊,里面有非常詳盡的使用幫助。

    19.4設置www服務器

    以服務器模式安裝redhat以后,系統缺省地就已經安裝了apach服務器,使用命令:

           ps ax+grep httpd

    來查看系統的apache服務器是否正在運行,若已經正在運行了,從另外一臺windows機器上,在瀏覽器中輸入www服務器的IP地址就會訪問到apache的缺省主頁。若apache沒有啟動,則需要使用命令:

           /etc/rc.d/init.d/httpd start

    來啟動apache服務器,若服務器成功啟動,然后再從windows機器上使用瀏覽器進行測試,一般來講只要成功按服務器模式安裝了Redhat,一般apache就能啟動運行的,若不能啟動運行,最常見的毛病是apache服務器的httpd.conf中本機的名字沒有正確設置,這時候需要編輯/etc/httpd/conf/httpd.conf中ServerName一行的內容,對于本機具有正式域名的服務器,這里設置ServerName為服務器域名,以為例:

    ServerName   

    若服務器沒有正式域名,則在這里指定ServerName為本機IP地址。然后再啟動apache服務器。

        若希望在機器啟動時自動啟動www服務器,則需要使用以下命令:

           [root@www /]# /usr/sbin/chkconfig –level 35 httpd on

        若希望在啟動時不啟動www服務器,則使用命令:

           [root@www /]# /usr/sbin/chkconfig –level 35 httpd off

        若希望在本機上創建多個,這里假設linuxaid需要設置兩個:和forum.linuxaid.com.cn。由于只能分配一個IP地址,所以這里采用基于域名的多虛擬域名服務器。編輯/etc/httpd/httpd.conf,添加下面的內容:

    NameVirtualHost 210.12.114.130

     

    ServerAdmin

    DocumentRoot /home/httpd/www.linuxaid.com.cn

    ServerName

    ErrorLog /var/log/httpd/www.linuxaid.com.cn/error.log

     

     

     

    ServerAdmin

    DocumentRoot /home/httpd/forum.linuxaid.com.cn

    ServerName forum.linuxaid.com.cn

    ErrorLog /var/log/httpd/forum.linuxaid.com.cn/error.log

     

        然后分別在/home/httpd/創建名字為和forum.linuxaid.com.cn的目錄,分別將兩個www服務器的html頁面拷貝到各自的目錄下。然后在/var/log/httpd/創建名字為和forum.linuxaid.com.cn的目錄,然后分別在這兩個目錄下創建文件error.log:

           touch error.log

    然后重新啟動apche服務器:

        /etc/rc.d/init.d/httpd restart

    然后從網絡上就可以測試虛擬服務器的可達性。

        對于大規模應用的web服務器,則需要調整其運行參數以使其能處理更多的服務請求。這就需要調整配置文件/etc/httpd/conf/httpd.conf中下面兩個參數:

    MinSpareServers 5

    MaxSpareServers 20

    StartServers 8

    MaxClients 150

    這幾個參數的含義分別為:

        系統中最少有MinSpareServers個www服務器空閑進程等待服務請求。

        系統中最少有MaxSpareServers個www服務器空閑進程等待服務請求。

        系統啟動以后,初始有StartServers個www服務器進程等待服務請求。

        最大同時有有MaxClients個www服務器進程。

    管理員應該根據自己系統的負載情況,設置這些參數。

    19.4設置sendmail服務器

    當前linux的各個發布都將sendmail作為缺省地郵件服務器軟件,所以這里主要討論在redhat6.2環境下如何將sendmail郵件服務器軟件運行起來,實現正常的郵件收發。

    編輯/etc/sendmail.cw文件,添加本機的域名到該文件中,這里以linuxaid.com.cn為例:

           linuxaid.com.cn

           mail.linuxaid.com.cn

    然后重新啟動sendmail郵件服務器:

           /etc/rc.d/init.d/sendmail restart

    然后測試郵件服務器,使用mail程序:

           [lix@mail /etc]# mail

    這里你應該將設置為你自己的外部郵箱。然后看能否收到,只要缺省安裝了sendmail,正確地修改了/etc/sendmail.cw文件,就肯定可以接收到信件,收到信件以后可以回復給發送者,然后再使用mail程序接收信件,若接收成功就表示 sendmail初步接收成功,更復雜的設置可以參考具體章節。

    若需要在啟動時自動啟動SENDMAIL服務器,則使用命令:

        /sbin/chkconfig –level 35 sendmail on

    若需要關閉自動啟動SENDMAIL服務器,則使用命令:

        /sbin/chkconfig –level 35 sendmail off

    下面討論兩個比較典型的需求:

    一種是若本機器有兩個域名:test1.com和test2.com,這里設定test1.com為主域名,于是當為系統添加一個系統帳號man1,則帳號man則會具有,但是也許管理員會希望man在test1.com和test2.com兩個域上都有郵箱,而且是同一個信箱,也就是說,當我向和發送郵件,man都可以從信箱收到。要實現這種設置,需要編輯文件/etc/mail/virtuusertable文件,添加如下內容:

    man

    然后運行make,重新啟動sendmail:

    /etc/rc.d/sendmail restart

    就可以實現這個效果。

        第二種情況是,希望設置一個別名信箱,也就是希望發往的所有的信件都實際上發給了用戶,而且實際上并沒有添加webmaster這個郵件帳號,它只是的一個別名。編輯/etc/alliases文件,添加如下內容:

        webmaster:       man

    然后運行命令/usr/bin/ newaliases,重新啟動sendmail服務器:/etc/rc.d/init.d/sendmail restart就可以了。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>