Tagged: Centos

Centos Postfix配置记

博客这么多年了,一直使用Sendmail无碍,但是最近问题频出,导致wordpress评论响应严重推迟!经朋友介绍说这个postfix不错,于是便想来试试。

关于Postfix

  1. postfix的产生是为了替代传统的sendmail.相较于sendmail,postfix在速度,性能和稳定性上都更胜一筹。现在目前非常多的主流邮件服务其实都在采用postfix. 当我们需要一个轻量级的的邮件服务器是,postfix不失为一种选择。
  2. postfix是免费的:postfix想要作用的范围是广大的Internet用户,试图影响大多数的Internet上的电子邮件系统,因此它是免费的。
  3. 更快:postfix在性能上大约比sendmail快三倍。一部运行postfix的台式PC每天可以收发上百万封邮件。
  4. 兼容性好:postfix是sendmail兼容的,从而使sendmail用户可以很方便地迁移到postfix。Postfix支持/var[/spool]/mail、/etc/aliases、 NIS、和 ~/.forward 文件。
  5. 更健壮:postfix被设计成在重负荷之下仍然可以正常工作。当系统运行超出了可用的内存或磁盘空间时,postfix会自动减少运行进程的数目。当处理的邮件数目增长时,postfix运行的进程不会跟着增加。
  6. 更灵活:postfix是由超过一打的小程序组成的,每个程序完成特定的功能。你可以通过配置文件设置每个程序的运行参数。
  7. 安全性:postfix具有多层防御结构,可以有效地抵御恶意入侵者。如大多数的postfix程序可以运行在较低的权限之下,不可以通过网络访问安全性相关的本地投递程序等等。

关闭Sendmail且卸载Sendmail

# 卸载Sendmail
service sendmail stop
chkconfig sendmail off
rpm -qa | grep sendmail | xargs rpm -e

安装Postfix

redhat6.0以上版本应该是默认集成了postfix服务的,假如没有安装的话,可以手动安装。

# 查看是否安装
rpm -qa | grep postifx
# 安装Postfix
yum install postfix
Read more

Linux 挂载硬盘记录

最近把vps迁移到了国外,数据神马的都迁移完了才发现还有硬盘没有挂进去!

1.首先查看系统新的硬盘

fdisk-l

2.对新的数据盘进行分区

依次输入为:n p 1 回车 回车 w
注:xvdb为数据盘名称,请根据自己服务器的实际名称更改
n为新建,p为主分区,1为一个分区,w为结束

fidsk-n

3.将新分区格式化为ext4格式

mkfs -t ext4 -c /dev/xvdb1
ext4

格式化为xfs

mkfs.xfs /dev/xvdb1
Read more

VPS数据库及文件备份脚本

最近又把服务器迁移到了国外,面对几个G的数据打包迁移确实不是那么好弄的。遂写下这个脚本来备份一下!!

  • 2015年10月7日更新,修复Mysql提示Warning: Using a password on the command line interface can be insecure
  • 2015年10月23日更新,模块化

使用方法:

curl "https://raw.githubusercontent.com/jalena/vps-backup/master/backup.sh" -O backup.sh && chmod +x backup.sh && ./backup.sh init ./backup.sh backup

对于Mysql 5.6 出现Warning: Using a password on the command line interface can be insecure的解决方法

touch /root/.my.cnf 
vi /root/.my.cnf

# 以下为插入的内容 
[client] user=数据库用户 
password=数据库密码 

[mysqldump] 
user=数据库用户 
password=数据库密码

然后到新服务器使用tar zxPf 解压就可以了

腾讯云COS

# 安装coscmd
pip install coscmd 

# 更新 
pip install coscmd -U 
# 初始化配置 
# 配置文件位于 ~/.cos.conf 
coscmd config -a <secret_id> -s <secret_key> -b <bucket> -r <region> [-m <max_thread>] [-p <parts_size>] 

# 查看帮助 coscmd -h

linux VPS添加SSH账号

添加一个普通帐号

# 添加一个名为username的用户
adduser username

# 更改账户密码
passwd username  
Changing password for user tommy.
New UNIX password:     //在这里输入新密码
Retype new UNIX password:  //再次输入新密码
passwd: all authentication tokens updated successfully.

添加一个仅有代理权限的帐号

# 添加帐号username
useradd -M -s /sbin/nologin -n username

# 更改帐号密码
passwd username

# 删除这个帐号
userdel -r username

Centos 6.x安装denyhosts阻止恶意破解SSH

最近登陆SSH总是遇到莫名其妙的不能登陆,查看登陆日志发现好多的恶意IP来尝试破解root,主机商强烈建议安装denyhosts。只好把安装步骤给记录一下咯!

环境检查

ldd /usr/sbin/sshd|grep libwrap  //查看libwrap动态链接库文件。
libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f4b2a1b9000)

python -V              //查询版本为2.6.5
Python 2.6.6

安装步骤

cd /usr/src 
wget http://ncu.dl.sourceforge.net/sourceforge/denyhosts/DenyHosts-2.6.tar.gz
tar -xzvf DenyHosts-2.6.tar.gz
cd DenyHosts-2.6
python setup.py install    //安装Denyhost
cd /usr/share/denyhosts/    //切换目录进入/usr/share/denyhosts目录
cp denyhosts.cfg-dist denyhosts.cfg   //备份配置文件

 DenyHosts参数配置

SECURE_LOG = /var/log/secure
# format is: i[dhwmy]
# Where i is an integer (eg. 7)
# m = minutes
# h = hours
# d = days
# w = weeks
# y = years
#
# never purge:
PURGE_DENY=50m
HOSTS_DENY=/etc/hosts.deny
BLOCK_SERVICE=sshd
DENY_THRESHOLD_INVALID=1
DENY_THRESHOLD_VALID=10
DENY_THRESHOLD_ROOT=5
WORK_DIR=/usr/local/share/denyhosts/data
DENY_THRESHOLD_RESTRICTED =1
LOCK_FILE=/var/lock/subsys/denyhosts
HOSTNAME_LOOKUP=NO
ADMIN_EMAIL = bcsytv@gmail.com
SMTP_HOST = localhost
SMTP_PORT = 25
SMTP_FROM = jalena <bcsytv@gmail.com>
SMTP_SUBJECT = DenyHosts Daily Report
DAEMON_LOG=/var/log/denyhosts
DAEMON_PURGE=10m

 DenyHosts启动文件配置

cp daemon-control-dist daemon-control
chown root daemon-control
chmod 700 daemon-control
./daemon-control start         //启动DenyHosts

ln -s /usr/share/denyhosts/daemon-control /etc/init.d/denyhosts    //建立符号链接
chkconfig --add denyhosts                      //增加denyhosts服务进程
chkconfig  denyhosts on                      //设置开机启动denyhosts
chkconfig --list denyhosts      // 查看是否生效

至此基本就好了,接下来就看看你的异常日志吧

[root@bcsytv denyhosts]# tail -f /var/log/secure 
Jan  9 17:46:14 bcsytv sshd[2567]: Received disconnect from 218.27.190.133: 11: Bye Bye
Jan  9 17:46:15 bcsytv sshd[2568]: Address 218.27.190.133 maps to 133.190.27.218.adsl-pool.jlccptt.net.cn, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
Jan  9 17:46:15 bcsytv sshd[2568]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.27.190.133  user=bin
Jan  9 17:46:17 bcsytv sshd[2568]: Failed password for bin from 218.27.190.133 port 37325 ssh2
Jan  9 17:46:17 bcsytv sshd[2569]: Received disconnect from 218.27.190.133: 11: Bye Bye
Jan  9 17:46:19 bcsytv sshd[2570]: Address 218.27.190.133 maps to 133.190.27.218.adsl-pool.jlccptt.net.cn, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
Jan  9 17:46:19 bcsytv sshd[2570]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=218.27.190.133  user=bin
Jan  9 17:46:20 bcsytv sshd[2570]: Failed password for bin from 218.27.190.133 port 51186 ssh2
Jan  9 17:46:22 bcsytv sshd[2571]: Received disconnect from 218.27.190.133: 11: Bye Bye
Jan  9 18:02:11 bcsytv sshd[2831]: refused connect from 118.186.216.26 (118.186.216.26)

VirtualBox安装Centos之网络配置

最近要在本地测试php,所以需要安装个环境。辛亏主机给力,所以整个虚拟机来。系统选择的是win7 专业版作为母鸡兼开发环境,虚拟机选用Oracle VM VirtualBox的64bit版本,centos选择的是centos6.4 64bit版。说来也够折腾的,安装一路顺畅,结果就是网络不通。做个记录,下次好看看。

Oracle VM VirtualBox网卡设置

Centos 6.x

网卡设置
VirtualBox 网卡设置

Centos的网卡配置有3个地方,第一个地方就是eth0这个东西了!

# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0" 
HWADDR=08:00:27:3E:46:EA        
TYPE=Ethernet
ONBOOT="yes"  # 是否随系统启动
NM_CONTROLLED="no" #这个必须设置no,如果设置为yes就是自动配置网络
UUID=d8cf0288-6066-4a2a-90d7-35667dccdb18
BOOTPROTO="static"  # 静态ip获取方式
IPV6INIT="no"
IPV6_AUTOCONF="no"
IPADDR=192.168.1.5      # IP
NETMASK=255.255.255.0   # 子网掩码
GATEWAY=192.168.1.1     #网关
DNS1=114.114.114.114    # DNS
DNS2=115.115.115.115

接下来就是network这个网关配置文件

# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=localhost
GATEWAY=192.168.1.1

再来就是resolv.conf这个dns配置了

# vi /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4

全部ok后就重启吧

service network restart

Centos 7.x

# vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
TYPE=Ethernet
BOOTPROTO="static"
NAME=enp0s3
DEVICE=enp0s3
NM_CONTROLLED="no"
IPADDR=192.168.1.10      # IP
NETMASK=255.255.255.0   # 子网掩码
GATEWAY=192.168.1.1     #网关
DNS1=119.29.29.29    # DNS
DNS2=223.5.5.5
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_PRIVACY=no
UUID=59504c7c-11b3-40c5-86a8-7bfbe7527109
ONBOOT=yes

其它设置同Centos 6.x

设置YUM源

# 备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# 下载新的CentOS-Base.repo 到/etc/yum.repos.d/
# CentOS 5
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
# CentOS 6
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
# CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 运行yum makecache生成缓存
yum makecache

Archives