现在的位置: 首页 > 综合 > 正文

LINUX 服务器配置大全

2013年02月12日 ⁄ 综合 ⁄ 共 7650字 ⁄ 字号 评论关闭

(转自LinuxSir)

一: DNS服务器的设置
1. 编辑/etc/named.conf
// generated by named-bootconf.pl

options {
directory "/var/named";
/*
* If there is a firewall between you and nameservers you want
* to talk to, you might need to uncomment the query-source
* directive below. Previous versions of BIND always asked
* questions using port 53, but BIND 8.1 uses an unprivileged
* port by default.
*/
// query-source address * port 53;
};

// 
// a caching only nameserver config
// 
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
zone "." IN {
type hint;
file "named.ca";
};

zone "mydomain.com" IN {
type master;
file "named.mydomain.com";
allow-update { none; };
};

zone "1.168.192.in-addr.arpa" IN {
type master;
file "named.mydomain.com.rev";
allow-update { none; };
};

zone "localhost" IN {
type master;
file "localhost.zone";
allow-update { none; };
};

zone "0.0.127.in-addr.arpa" IN {
type master;
file "named.local";
allow-update { none; };
};

include "/etc/rndc.key";

2. 编辑正向解析文件/var/named/named.mydomain.com
$TTL 86400
@ IN SOA my.mydomain.com. root.my.mydomain.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS my.mydomain.com.
IN MX 10 my.mydomain.com.

my IN A 192.168.1.50
www IN CNAME my.mydomain.com.
ftp IN CNAME my.mydomain.com.
smtp IN CNAME my.mydomain.com.
pop3 IN CNAME my.mydomain.com.

3. 编辑反向解析文件/var/named/named.mydomain.com.rev
$TTL 86400
@ IN SOA my.mydomain.com. root.ns.mydomain.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS my.mydomain.com.

50 IN PTR my.mydomain.com.

4. 编辑/var/named/named.local文件
$TTL 86400
@ IN SOA my.mydomain.com. root.my.mydomain.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS my.mydomain.com.

1 IN PTR localhost.

5. 编辑/etc/resolv.conf
# MADE-BY-RP-PPPOE
domain mydomain.com
nameserver 192.168.1.50
search localdomain

二: WEB服务器的设置
只需对/etc/httpd/conf/httpd.conf进行部分修改即可
ServerTokens OS

ServerRoot "/etc/httpd" 注:指定守护进程httpd的运行目录

PidFile run/httpd.pid

Timeout 300 注:定义客户程序和服务器连接的超时间隔

KeepAlive Off 注:定义是否支持一次连接,多次传输功能

MaxKeepAliveRequests 100 注:一次连接可以进行的HTTP请求的最大请求次数

KeepAliveTimeout 15 注:一次连接中的多次请求传输之间的时间

MaxRequestsPerChild 0 注:每个子进程处理服务请求次数 0为无限次

Listen 80

User apache 注:指定用户和组
Group apache

ServerAdmin nangshou@mydomain.com 注:服务器管理员的E_MAIL地址

#ServerName 192.168.1.50:80 注:服务器域名,通常没有dns才需要

UseCanonicalName Off

DocumentRoot "/var/www/html" 注:指定网页文件存放位置

UserDir user_www 注:用于个人主页,一般为/home/user/网页文件目录

DirectoryIndex index.html index.htm index.php 注:指定网站首页名

AccessFileName .htaccess

Alias /manual "/var/www/manual"


Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all

注:以上是设置针对目录进行文件的访问控制
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"


Scriptsock run/httpd.cgid


AllowOverride None
Options None
Order allow,deny
Allow from all

AddDefaultCharset GB2312 注:网站支持的字符编码

注:以下是设置虚拟主机服务所需配置的地方
#NameVirtualHost 202.101.2.1 注:基于名字的虚拟主机必须,如基于IP地址则不需要

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#注:如果是基于IP地址的虚拟主机只需下面的设置即可
#
# ServerAdmin webmaster@dummy-host.example.com
# DocumentRoot /www/docs/dummy-host.example.com
# ServerName dummy-host.example.com
# ErrorLog logs/dummy-host.example.com-error_log
# CustomLog logs/dummy-host.example.com-access_log common
#

注:基于名字即一个IP地址对应多个域名
基于IP地址即每一个域名均有与之对应的IP

三: DHCP服务器的安装设置
1. 在安装光盘里找到dhcp-*.rpm,
2. Rpm –ivh dhcp-*.rpm
3. Setup/system serviceu将dhcp设为系统自启动
4. 配置/etc/dhcpd.conf文件
subnet 192.168.1.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.1.60 192.168.1.160; 注:IP地址分配范围
option routers 192.168.1.254; 注:默认网关
option subnet-mask 255.255.255.0; 注:默认子网掩码
option domain-name “mydomain.com”; 注:默认域名
option domain-name-servers 192.168.1.50,202.96.134.133;

四: 电邮(sendmail)服务器的设置
4.1 设置Sendmail.cf 
请在Cwlocalhost之後加上你那一台机器所有可能用来当收信地址的host name 。 例如我有一台机器叫:ftp.mydoamin.com,而且也叫:email.mydomain.com,而我希望这一台机器这两个名字都能收信,那我要这么作: 
Cwlocalhost ftp.mydomain.com email.mydomain.com
顺便说一下,Cw之後只能写入本机器的名字,千万不能写入其他机器的名字,否则,甚麽地方都能寄,那被写的就 一定不能寄。
上面其实是简略的说法,如果你对DNS 也熟悉的话,可参考这节来作判断,判断是否须要在Cw之後写入东东。否则 请直接跳过这一小节,把本机器所用的所有名字都写上。
1.在一台机器上,如果有多个名字(hostname),而是用CNAME 建立的,如: 
$ORIGIN my.mydomain.com
ftp IN A 192.168.1.50 
email IN CNAME my.mydomain.com 
那麽可以不必在Cw上标明。系统会透过DNS 找到其 Canonical name。 
2.如果一台机器有多个名字,可是,每个名字是用A record 建立的。如: 
$ORIGIN my.mydomain.com
ftp IN A 192.168.1.50
emial IN A 192.168.1.50
这种情况【一定】要记得在Cw後写上你所要收信的名字。如果这个忘了写,会有怎样的问题呢? 忘了将会有从外面机器寄信来,没有写上的机器名将却收不到信,会提示: 
"Local configuration error" 。 
如:我的sendmail.cf中的Cw这行是如下: Cw my.mydomain.com那我将无法使用这个地址: username@my.mydomain.com而只能用 username@ftp.mydomain.com 否则将出现上述错误。 
如果发现了错误,那再加上去也就可以了。 
3.如果一台机器有多interface ,各interface有其本身的名字,且要收信。这个情况也要在Cw之後写明所有要收信的hostname。
Fw/etc/sendmail.cw 这一行表示让sendmail去哪里找sendmail.cw这个文件,这个文件很重要。
还有一行你可能也需要改一下:
R$*     $#error  $@ 5.7.1 $:"550 Relaying denied" 改成
R$-     $@ OK
注意:中间的分隔要用"Tab"键.
4.2 设置Sendmail.cw
修改sendmail.cw文件,设置这个邮件服务器用于发送邮件的主机的名字,可以用你的域名,或主机名。
# sendmail.cw - include all aliases for your machine here. 
mydomain.com
mail.mydomain.com
my.mydomain.com 
ok!一个标准的sendmail.cf文件就设置完了! 
4.3 设置access
打开/etc/mail/access,你会看到 (注意一些系统的access文件不再/etc/mail下,如找不到请用whereis查找或检查是否安装正常)
# Check the /usr/doc/sendmail-8.9.3/README.cf file for a description
# of the format of this file. (search for access_db in that file)
# The /usr/doc/sendmail-8.9.3/README.cf is part of the sendmail-doc
# package.
#
# by default we allow relaying from localhost...
localhost.localdomain RELAY
localhost RELAY

如果您的IP地址是192.168.1.50的话,这样请在最后一行加上 192.168.1.50 RELAY
其文件的最后三行应是:
localhost.localdomain RELAY
localhost RELAY
192.168.1.50 RELAY

加上这句话您就可以用sendmail发送接收mail了!但是如果您想让别人也可以使用sendmail的话,他的IP是202.168.25.22,这样就在在最后一行加入 202.168.25.22 RELAY
其文件的最后四行应是:
localhost.localdomain RELAY
localhost RELAY
192.168.1.50 RELAY
202.168.25.22 RELAY

我想,您现在一定有个疑问是,如果我想设置50个人用sendmail是不是需要加50个IP啊!?嘿嘿,不用啦,是这样,sendmail考虑到多用户的时候,它准许你添入整个C类地址。其格式如下:
localhost.localdomain RELAY
localhost RELAY
192.168.1 RELAY

这样,您就是把192.168.1这整个C都加入的sendmail中,这个C类地址的用户,如果在你的系统里有账号的话,就可以使用sendmail收发信件了!然后运行:# makemap hash access.db < access
4.4 设置pop3
如果您需要pop3来接收信件,您需要打开pop3端口,
vi /etc/inetd.conf 查找到
# pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d把#号删掉。vi/etc/services 查找#pop-3 110/tcp # POP version 3把#号删掉。这样,在restart inetd后,pop3 110端口就可以接信了!如果还是不行,请检查是否安装pop3端口!
4.5 sendmail的别名和forward
(1) 关于直接用IP地址发信 
mail user@[192.168.IP.Address] 
只要用[]将IP地址括起来就行了 

(2) 关于alias 
sendmail在/etc下有两个文件 aliases和aliases.db, 后者是前者用newaliases 生成的别名数据库. 你可以手工编辑/etc/aliases, 然后运行newaliases更新数据 库(其实newaliases是个到sendmail的 symlink) 
eg: nangshou : user@mydomain.com 
alias-name: real-user-account 
则以后mail nangshou就可以将信寄到user@mydomain.com处 而别人寄给alias-name@your.domain.name的信就会转给真正的用户real-user-account 

(3) 关于forward 
在你的$HOME目录下面编辑一个.forward文件, 里面写上你要forward的目的e-mail 地址或本机的用户名, 就可以自动将信 forward到相应地址 
eg: .forward: user@mydomain.com 
或 other-user-account 
则给此人的e-mail会forward到mydoamin或other-user-account处 

(4) 关于vacation 
去找一个vacation包(如RedHat的contrib中有vacation的rpm), 装上后就一个 /usr/bin/vacation程序和一个man. 先运行vacation, 它会让你编辑$HOME/.vacation.msg文件, 就是要发回给对方 告诉他你现在不看信的东西啦. 然后编辑$HOME/.forward文件, 写这样一句 /username, "|/usr/bin/vacation username", username 要换回你自己的了 然后运行vacation -I建$HOME/.vacation.db就好了。

(5) 关于sendmail的一些文件 
/var/log/maillog sendmail的log, 分析错误有用 
/var/spool/mail/$USER 进来的信, 每个用户一个文件 
/var/spool/mqueue mail queue, 可以用mailq看队列中待发的信 
(mailq也是 sendmail的symlink了) 
dfxxxxxx 这是信的内容 
qfxxxxxx 这是信的subject和别的信息 (反正每信一个号了, 配对的) 
/etc/sendmail.cf sendmail的配置文件, 改动它可要小心 
/etc/sendmail.cw 假如你的机器有好多alias的话就把名字写在 
这个文件中, 这样写哪个都能收到信 
4.6 限制邮件的大小
vi /etc/sendmail.cf:
Mlocal, P=/bin/mail, F=lsDFMrmn, S=10, R=20/40,
Maxsize=1000000,
A=mail -d $u
Mprog, P=/usr/local/sendmail/smrsh, F=lsDFMeu, S=10, R=20/40, D=$z:/,
Maxsize=1000000,
其中maxsize=1000000即为限制数

抱歉!评论已关闭.