sendmail centos centos login incorrect
如何在CentOS Linux下安装ASTERISK和FreePBX
下面给出在linux上安装Asterisk,FreePBX的基本步骤。
1.首先是更新系统(可选)
在命令行中输入
sudo apt-get update
sudo apt-get upgrade
2.安装LAMP(Apache2+MySQL+PHP)
在命令行输入
sudo tasksel
选择 LAMP Server
3.添加额外的PHP软件包
sudo apt-get install php5-gd php-pear php-db sox curl
4.安装phpmyadmin(可选)
sudo apt-get install phpmyadmin
5.安装asterisk
sudo apt-get install asterisk asterisk-mysql asterisk-mp3
6.安装Freepbx准备工作
在安装Freepbx我们先要想好将Freepbx安装在哪个目录下,FreePBX为asterisk的Web管理应用,可以帮助用户配置Asterisk等。
1) Ubuntu的Web根目录为/var/www,因此我们可以把FreePBX安装到/var/www/freepbx目录下,为便于管理,创建三个子目录conf设置文件
log存放日志
public WEB应用。
sudo mkdir/var/www/freepbx/
sudo mkdir/var/www/freepbx/conf
sudo mkdir/var/www/freepbx/log
sudo mkdir/var/www/freepbx/public
2)创建设置文件/var/www/freepbx/conf/vhost.conf
sudo vim/var/www/freepbx/conf/vhost.conf
输入以下内容
<VirtualHost*:80>
ServerName freepbx
ServerAlias freepbx
ServerAdmin james.shen@guidebee.com
ErrorLog/var/www/freepbx/log/error.log
CustomLog/var/www/freepbx/log/access.log combined
DocumentRoot/var/www/freepbx/public
<Directory/var/www/freepbx/public>
Options Indexes FollowSymLinks MultiViews
Order allow,deny
AllowOverride All
Allow from all
</Directory>
<Directory/var/www/freepbx/public/admin>
AuthType Basic
AuthName"Restricted Area"
AuthUserFile freepbx-passwd
Require user admin
</Directory>
</VirtualHost>
修改 ServerAdmin到你自己的Email地址。
3)将vhost添加到 Apache的sites-enabled目录下
sudo ln-s/var/www/freepbx/conf/vhost.conf/etc/apache2/sites-available/freepbx
cd/etc/apache2/sites-enabled/
sudo ln-s../sites-available/freepbx
4)创建用户和密码来验证合法用户可以来配置FreePBX(有权限访问该网页)
sudo htpasswd-c/etc/apache2/freepbx-passwd admin
5)重启Apache
sudo/etc/init.d/apache2 restart
有了这些准备工作后,就可以开始安装FreePBX了
7.安装FreePBX
1)下载FreePBX安装包
cd/tmp
wget
cd/usr/src
sudo tar xvzf/tmp/freepbx-2.8.1.tar.gz
cd freepbx-2.8.1/
2)创建数据库
mysqladmin create asterisk-u root-p
mysqladmin create asteriskcdrdb-u root-p
mysql-u root-p asterisk< SQL/newinstall.sql
mysql-u root-p asteriskcdrdb< SQL/cdr_mysql_table.sql
3)创建数据库用户
mysql-u root-p
在SQL命令行输入GRANT ALL PRIVILEGES ON asterisk.* TO asterisk@localhost IDENTIFIED BY‘badasspassword’;
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asterisk@localhost IDENTIFIED BY‘badasspassword’;
flush privileges;
quit;
注意将badasspassword换成你自己选择的密码。
4)备份modules.conf, FreePBX安装时会修改Apache的配置文件
sudo cp/etc/asterisk/modules.conf~/asterisk-modules.conf
5)安装FreePBX
sudo./install_amp
输入对应的参数
Enter your USERNAME to connect to the'asterisk' database:
[asteriskuser] asterisk
Enter your PASSWORD to connect to the'asterisk' database:
[amp109] badasspassword
Enter the hostname of the'asterisk' database:
[localhost]
Enter a USERNAME to connect to the Asterisk Manager interface:
[admin]
Enter a PASSWORD to connect to the Asterisk Manager interface:
[amp111]
Enter the path to use for your AMP web root:
[/var/www/html]
/var/www/freepbx/public
Enter the IP ADDRESS or hostname used to access the AMP web-admin:
[xx.xx.xx.xx] freepbx
Enter a PASSWORD to perform call transfers with the Flash Operator Panel:
[passw0rd] password
Use simple Extensions [extensions] admin or separate Devices and Users [deviceanduser]?
[extensions]
Enter directory in which to store AMP executable scripts:
[/var/lib/asterisk/bin]
6)恢复asterisk-modules.conf
sudo cp~/asterisk-modules.conf/etc/asterisk/modules.conf
7)添加asterisk用户
sudo adduser www-data asterisk
修改权限/etc/amportal.conf中添加
AMPASTERISKUSER=www-data
AMPASTERISKGROUP=asterisk
AMPASTERISKWEBUSER=www-data
AMPASTERISKWEBGROUP=asterisk
重启amportal
sudo amportal start
8)使用amport启动Asterisk
sudo update-rc.d-f asterisk remove
sudo sed-e s/BACKGROUND=0/BACKGROUND=1/-i/usr/sbin/safe_asterisk
修改/etc/rc.local
在exit 0前添加
/usr/local/sbin/amportal start
至此,安装完毕。
CentOS下邮件服务sendmail的安装及简单配置
sendmail是Linux下优秀的邮件系统。在不做任何设定的情况下,sendmail发出邮件的邮箱源地址形如userid@localhost.localdo,这种地址几乎会被所有的邮箱认定为SPAM(垃圾邮件)或直接拒收。
1、 Sendmail安装
在CentOS下,sendmail一般默认是随操作系统一起安装的。如果安装系统时没有安装sendmail服务,手动安装sendmail也很简单:
复制代码代码如下:
# yum install-y sendmail
# yum install-y sendmail-cf
2、 Senmail的SMTP认证配置(不需要认证的可忽略此步)
首先确认saslauthd服务是否安装或启动。
安装saslauthd服务:
复制代码代码如下:# yum install-y saslauthd
启动saslauthd服务:
复制代码代码如下:# service saslauthd start
(1)配置Senmail的SMTP认证
复制代码代码如下:
# vi/etc/mail/sendmail.mc
复制代码代码如下:
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
将上面两行的dnl去掉。在sendmail文件中,dnl表示该行为注释行,是无效的,因此通过去除行首的dnl字符串可以开启相应的设置行。
(2)设置Sendmail服务的网络访问权限
复制代码代码如下:
# vi/etc/mail/sendmail.mc
复制代码代码如下:
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
将127.0.0.1改为0.0.0.0,意思是任何主机都可以访问Sendmail服务。如果仅让某一个网段能够访问到Sendmail服务,将127.0.0.1改为形如192.168.1.0/24的一个特定网段地址。
3、生成Sendmail配置文件
Sendmail的配置文件由m4来生成,m4工具在sendmail-cf包中。如果系统无法识别m4命令,说明sendmail-cf软件包没有安装。
生成Sendmail的配置文件:
复制代码代码如下:
m4/etc/mail/sendmail.mc>/etc/mail/sendmail.cf
需要重启Sendmail才能使配置文件生效。
4、postfix与sendmail的冲突问题
在Linux服务器(CentOS release 6.6)上配置好了sendmail后,测试发送邮件时发现有问题,检查sendmail服务的状态,发现其处于“sendmail dead but subsys locked”,检查发现postfix服务也在运行。只需要将postfix服务停掉即可。为什么会出现这种情况呢?Something was occasionally causing the postfix service to start which then caused the status of sendmail to jump to dead but subsys locked.两种似乎不兼容。
操作步骤:
(1):检查sendmail服务的状态
复制代码代码如下:
[root@DB-Server~]# service sendmail statussendmail dead but subsys lockedsm-client(pid 22112) is running...
(2):检查postfix服务的状态
复制代码代码如下:
[root@DB-Server~]# service postfix statusmaster(pid 1777) is running...
(3):停止postfix服务
复制代码代码如下:
[root@DB-Server~]# service postfix stopShutting down postfix: [ OK ]
(4):重新启动sendmail服务
复制代码代码如下:
[root@DB-Server~]# service sendmail stopShutting down sm-client: [ OK ]Shutting down sendmail: [FAILED][root@DB-Server~]# service sendmail stop[root@DB-Server~]# service sendmail startStarting sendmail: [ OK ]Starting sm-client: [ OK ]
(5):禁用postfix在reboot后自动启动
检查一下是否有设定 postfix在 reboot后自动启动
复制代码代码如下:
chkconfig--list| grep postfix
chkconfig postfix off
Centos系统sendmail发送邮件很慢怎么办
安装sendmail服务器的很简单,只需输入以下命令即可:
yum install sendmail
这个时候依然无法发邮件,还得修改一下php.ini的配置,调用sendmail功能
第一步:输入 vi/usr/local/php/etc/php.ini
第二步:找到有关sendmail_path的那一行,按i键,然后就可以修改代码了,
第三步:去掉行首注释(分号;),并改成:sendmail_path=/usr/sbin/sendmail-t–i
第四步:按 Esc键——shift+q——wq(保存退出的意思)
第五步:重启vps 命令: reboot
重启完毕后可以发邮件了,但速度很慢,此时可以输入如下命令查看一下解析文件:cat/etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
199.193.248.26 wenran
因为sendmail监听的是127.0.0.1,但却无法确认主机名weimtv(因为在服务器上/etc/sysconfig/network文件里记录的HOSTNAME是 wenran),所以发送邮件就非常慢了。那么我就把 wenran这个主机名同时也加到127.0.0.1上面,变成:
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost wenran
199.193.248.26 wenran
修改方法依然是用vi命令,
然后重启sendmail服务:service sendmail restart