linux centos防止暴力破解,封掉多次失败的IP地址

2017-5-13 寒川 计算机

一次偶然机会看到服务器的日志secure文件(路径:/var/log/secure)非常大,有上百MB了,打开发现有大量的用户尝试使用ssh登录服务器,看来是有人想暴力破解了,幸好服务器密码还足够强健,不然估计被沦陷了。如何事防止服务器暴力破解呢?网站找到了现成的方法,记录下来,或许以后还会用到。

思路是查找/var/log/secure中验证失败且出现的次数较多的ip,对其进行封IP处理。具体方法如下:

vi /usr/local/bin/secure.sh
#输入以下脚本
#! /bin/bash
cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /usr/local/bin/black.list
for i in `cat  /usr/local/bin/black.list`
do
  IP=`echo $i |awk -F= '{print $1}'`
  NUM=`echo $i|awk -F= '{print $2}'`
  if [ ${#NUM} -gt 1 ]; then
    grep $IP /etc/hosts.deny > /dev/null
    if [ $? -gt 0 ];then
      echo "sshd:$IP:deny" >> /etc/hosts.deny
    fi
  fi
done
然后将secure_ssh.sh加入到cron计划任务中即可。


vi /var/spool/cron/root
#增加以下命令,一分钟执行一次
*/1 * * * *  sh /usr/local/bin/secure.sh


标签: 脚本 计算机 linux CentOS ssh 暴力破解

评论(3) 浏览(5591)

centos 搭建git php自动部署。

2016-10-15 寒川 计算机

最近没什么事儿,研究了一下git自动部署,采用webhook用php执行同步git的方式进行自动部署。最开始整了好几小时,用的https连接git仓库,最终解决了,写下来作个简单的总结。

    在centos上搭建git,因centos上用yum install 命令默认装的是1.7.x的git,与最新的相差较大,同时带用户密码的https远程库无法访问,出现类似以下错误:

error: The requested URL returned error: 401 Unauthorized while accessing
因此需要安装最新版的git,安装如下:

1. 需要给 CentOS 下载安装编译工具。

yum groupinstall "Development Tools"
2.安装一些 git 构建或执行时需要的其他依赖。
yum install zlib-devel perl-ExtUtils-MakeMaker asciidoc xmlto openssl-devel
3. 下载 git 最新版本的源代码
$ wget -O git.zip https://github.com/git/git/archive/master.zip

4.解压源文件

unzip git.zip
5、编译安装
cd git-master
autoconf
./configure
make && make install
ln -s /usr/local/bin/git /usr/bin/ #如果在/usr/bin/下存在git,先删除后再执行此句
6、查看git版本,恭喜安装完成
git --version
6、其它:在git安装过程中出现如下错误:
No rule to make target `usr/lib64/per15/CORE/config.h`, needed by `perl.mak`. Stop
请执行
yum install -y perl-devel.x86_64
安装后重新执行第5步进行git的安装。

自动部署:

先cd进web服务器的web目录,再执行(注意用的www用户,www为php运行时的用户):

sudo -u www git init #初始化库
sudo -u www git remote add origin https://user:pass@git.oschina.net/xx/xx.git #添加一个仓库,注意,用户密码中有@时用%40代替。
加一个webhook,文件名为:git.php,内容如下:
<?php
$dir = __DIR__;
$handle = popen('cd '.$dir.' && git fetch --all && git pull origin master','r');
$read = stream_get_contents($handle);
print_r($read);
pclose($handle);
然后在git库中加些git.php为webhook即可。

标签: php linux CentOS git

评论(4) 浏览(5407)

centos 修改系统时间无效

2015-5-12 寒川 计算机

情况是这样,我的centos服务器时间故障,系统时间显示未2014年02月14日,采用date -s 命令无法修改centos的系统时间,修改及结果如下:

QQ截图20150512122525.jpg

真是蛋疼,采用date -s修改系统时间,修改后在date,结果居然没变。

百度了很多办法没效果,最后居然用必应解决了。

命令如下:

echo 1 > /proc/sys/xen/independent_wallclock

ntpdate cn.pool.ntp.org

然后系统时间就正常了。


附录:

①、若没有ntpdate命令,Centos请执行 yum -y install ntp*

②、更改系统时区为北京时间:cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

③、添加时间同步任务计划:

i:若没有crontab,请执行 yum -y install vixie-cron crontabs

ii:执行 crontab -e

iii:按 i 添加一行:

*/30 * * * *  /usr/sbin/ntpdate -u pool.ntp.org  #每30分钟同步一次时间

iv:按下ESC,并键入  :wq 保存退出即可。


标签: linux CentOS 系统时间

评论(0) 浏览(7441)

如何访问谷歌?centos 一键搭建VPN

2014-9-15 寒川 计算机

谷歌被和谐好长一段时间了,一直无法访问,好怀念。原来还传了好些照片在谷歌相册,现在统统无法打开了。伟大的城墙,在筑起的一瞬间就注定要将自身与外界隔离。如何访问谷歌(google.com)呢?为了免费取回那些照片,还真实花了点心思阿。

先是找vps或云服务器厂家,叫他们开通国外或香港的主机,当然,像哥这么拉风的男子当然是说先测试,以免发生费用。在找到合适的vps供应商后,开通服务器,然后用centos一键安装vpn,然后本地电脑通过vpn取回在谷歌服务器上的照片。然后对vps提供商说拜拜。计划貌似真的不错。下面复制粘贴centos一键搭建vpn。

这是由DiaHosting.com提供的PPTPD VPN一键安装包。

系统要求:CentOS 5 32bit/64bit。若VPS安装需要Xen虚拟化技术支持或者最新的OpenVZ技术支持。

安装方法,登陆SSH后输入以下命令:

wget http://www.diahosting.com/dload/pptpd.sh
sh pptpd.sh

安装完成后会提示你默认用户名密码,

如果想添加用户就去/etc/ppp/chap-secrets文件按格式添加就行了。

PS:使用此一件安装包后,iptables和pptpd服务会随开机启动!

标签: google CentOS vpn 谷歌

评论(3) 浏览(8289)

wdcp安装apache2安装mod_proxy代理模块

2014-4-22 寒川 计算机

安装挺简单的,随便写写,记录下来或许以后有用。先介绍一下环境:centos6.x,wdcp_v2.5.10,apache2.2.24,其他版本自行参考。

随便说下,最初安装wdcp是采用源码安装,源码解压至/root/lanmp的。下面是安装代理模块命令(注意其他版本、源码路径差异):


cd /root/lanmp/httpd-2.2.24/modules/proxy/ #进入源码目录
/www/wdlinux/httpd-2.2.24/bin/apxs -i -c -a mod_proxy.c proxy_util.c  #编译安装
/www/wdlinux/httpd-2.2.24/bin/apxs -i -c -a mod_proxy_http.c
/www/wdlinux/httpd-2.2.24/bin/apxs -i -c -a mod_proxy_ftp.c
/www/wdlinux/httpd-2.2.24/bin/apxs -i -c -a mod_proxy_connect.c


如果正常的话会在/www/wdlinux/httpd-2.2.24/modules/生成mod_proxy.so、mod_proxy_connect.so、mod_proxy_ftp.so、mod_proxy_http.so几个文件。同时查看一下/www/wdlinux/httpd-2.2.24/conf/httpd.conf是否增加了如下几行,如果没增加手动增加:


LoadModule proxy_module       modules/mod_proxy.so
LoadModule proxy_http_module  modules/mod_proxy_http.so
LoadModule proxy_ftp_module   modules/mod_proxy_ftp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
然后重启apache,打完收工!


标签: apache CentOS wdcp mod_proxy 代理

评论(0) 浏览(12072)

wdcp安装中文分词scws

2014-4-20 寒川 计算机

自从有了虚拟机,鼓捣的东西从没停过。昨晚为wdcp安装中文分词,今天整理如下,分享出来。

测试环境:

OS:centos6.5

WDCP:wdcp_v2.5.10(20140213) 

PHP:5.3.27

环境介绍完毕,下面是安装步骤:

cd /root #已root进入root目录
wget http://www.xunsearch.com/scws/down/scws-1.2.2.tar.bz2 #下载源码
tar xvjf scws-1.2.2.tar.bz2 #解压源码
cd scws-1.2.2 #进入源码目录
./configure --prefix=/usr/local/scws ; make ; make install #配置,安装
cd /usr/local/scws/etc #进入scws目录
wget http://www.xunsearch.com/scws/down/scws-dict-chs-gbk.tar.bz2 #下载gbk词库
wget http://www.xunsearch.com/scws/down/scws-dict-chs-utf8.tar.bz2 #下载utf8词库
tar xvjf scws-dict-chs-gbk.tar.bz2 #解压gbk词库
tar xvjf scws-dict-chs-utf8.tar.bz2 #解压utf8词库
cd /root/scws-1.2.2/phpext #进入php扩展源码目录
/www/wdlinux/apache_php-5.3.27/bin/phpize #侦测环境(phpize工具是在php安装目录下,基于这点phpize对应了当时的php环境,所以是要根据该php的配置情况生成对应的configure文件),建立一个configure文件。必须在一个目录下去运行phpize。那么phpize就知道你的的环境是哪个目录,并且configure文件建立在该目录下。
./configure --with-php-config=/www/wdlinux/apache_php-5.3.27/bin/php-config --with-scws=/usr/local/scws #配置
make install
配置php,在 php.ini 中加入以下几行:
 [scws]
 ;
 ; 注意请检查 php.ini 中的 extension_dir 的设定值是否正确, 否则请将 extension_dir 设为空,
 ; 再把 extension = scws.so 指定绝对路径。
 ;
 extension = /www/wdlinux/apache_php-5.3.27/lib/php/extensions/no-debug-non-zts-20090626/scws.so #此路径编译后会显示
 scws.default.charset = utf8
 ;上一行也可说gbk
 scws.default.fpath = /usr/local/scws/etc
service httpd restart #重启web服务器

若上述均无误,中文分词scws-1.2.2应该安装成功。 其他版本,请参考安装。

最后,可能出现用php分词时出现单字的情况,貌似词库没起作用。经测试,确实是没起作用,原因是词库不具有读写权限,手动设置一下就OK了。

标签: php CentOS wdcp 中文分词 scws

评论(1) 浏览(11372)

centos 6最小化安装,无法上网安装其他软件解决办法

2014-4-19 寒川 计算机

由于网络不给力,图个快速,下载了个最小安装版centos6.5,用wm虚拟机一会儿就安装完毕,只是默认情况不能上网,没法安装所需的软件。解决办法如下:

第一步:执行命令启动网卡 (最小化安装不是自动启动的)
[root@localhost]# ifconfig eth0 up 
第二步:
[root@localhost]# dhclient eth0  
此两步操作完成,可以上网了。

然后安装其他软件无压力。


开机启动:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

将ONBOOT=no改为yes

标签: CentOS VM 无法上网

评论(0) 浏览(8752)

Powered by emlog 蜀ICP备12030225号

川公网安备 51042102000001号

sitemap