• 解决你的服务器总是被暴力破解的办法 - fail2banfail2ban

    前言对于SSH服务的常见的攻击就是暴力破解攻击——远程攻击者通过不同的密码来无限次地进行登录尝试。当然SSH可以设置使用非密码验证验证方式来对抗这种攻击,例如公钥验证或者双重验证。将不同的验证方法的优劣处先放在一边,如果我们必须使用密码验证方式怎么办?你是如何保护你的 SSH 服务器免遭暴力破解攻击的呢?fail2ban 是 Linux 上的一个著名的入侵保护的开源框架,它会监控多个系统...

    数据之巅 发布于:2017年06月26 10:01:12
  • 禁止chrome的button、input等的点击边框样式css

    禁止焦点后边框样式:#element{ outline: 0;}禁止textarea可拉动大小:#element textarea{ resize: none;}

    伏草惟存 发布于:2017年06月24 11:03:09
  • gcc同时链接时指定链接动态库和静态库gccg++

    最近因为项目的makefile同时使用了静态动态的连接库,所以,就要同事的链接进去我们知道gcc的-static选项可以使链接器执行静态链接。但简单地使用-static显得有些’暴力’,因为他会把命令行中-static后面的所有-l指明的库都静态链接,更主要的是,有些库可能并没有提供静态库(.a),而只提供了动态库(.so)。这样的话,使用-static就会造成链接错误。之前的链接选项大致是这样的...

    伏草惟存 发布于:2017年06月23 16:34:30
  • 为什么中断处理函数中不能使用printf语句signallinux

    一个ISR应该避免调用不可重入函数。一些标准库函数是不可重入的,如经常实现的malloc和printf。因为中断可能发生在执行任务中,因为任务可能是在“malloc”的函数调用中,如果ISR调用此相同的不可重入函数,由此产生的行为可能是灾难性的。不可重入函数是指这样的一类函数,不可以在它还没有返回就再次被调用。例如printf,malloc,free等都是不可重入函数。因为信号可能在任何时候发生,...

    zzgzzg00 发布于:2017年06月20 15:10:56
  • pcrepp/pcre++使用教程pcrecpppcrec++教程

    简介:       pcrepp/pcre++ 是一个封装了pcre的c++库。使用起来要比pcre库方便许多。        下载地址:http://bytelang.com/s/3f467a        既然为pcre的封装,所以pcre库是必须安装的,在上面的地址安装好c...

    zzgzzg00 发布于:2017年06月19 15:34:03
  • linux标准输入读取字符backspace被变为^hcpplinuxtermios

    退格键(“backspace”)居然是^H^H,不符合我们使用习惯,我们平常使用退格键都习惯删除上一个字符。这属于终端属性的范畴。可以通过stty来实现或者在程序中tcgetattr+tcsetattr结合实现。设置命令设置当前终端的属性stu@ubuntu:~/test1$ stty erase ^H 在bash下:$ stty erase ^? &nb...

    伏草惟存 发布于:2017年06月17 16:47:39
  • linux下的强大工具定位内存泄露 - mtracelinuxmtrace

      一谈到内存泄露, 多数程序员都闻之色变。 没错, 内存泄露很容易引入, 但很难定位。  以你我的手机为例(假设不经常关机), 如果每天泄露一些内存, 那么开始的一个星期, 你会发现手机好好的, 当内存泄露积累到一定程度,  那就是各种卡死了, 系统异常, 最后死机, 不得不重启。        如果搞开发, 遇到内存泄露问题...

    myd620 发布于:2017年06月16 16:43:57
  • C++中子类调用父类虚函数c++虚函数

    #include <iostream>using namespace std;class A{ public: virtual void func(){ cout << 1 <<endl; };};class B : public A{ public: void func(){ cout <<...

    myd620 发布于:2017年06月15 16:33:53
  • 使用truss、strace或ltrace诊断"疑难杂症" Segmentation fault排查linuxdebug

    进程无法启动,软件运行速度突然变慢,程序的"Segment Fault"等等都是让每个Unix系统用户头痛的问题,本文通过三个实际案例演示如何使用truss、strace和ltrace这三个常用的调试工具来快速诊断软件的"疑难杂症"。truss和strace用来 跟踪一个进程的系统调用或信号产生的情况,而 ltrace用来 跟踪进程调用库函数的情况。truss是早期为Syste...

    风萧萧兮易水寒 发布于:2017年06月15 09:49:36
  • vim插件syntastic 如何支持c++11 语法提示vimsyntastic

    syntastic默认使用gcc编译器来进行语言检测,所以在使用c++的时候特别是c++11时。会出现很多编译错误提醒,但实质上使用g++是可以完美编译的。要想添加syntastic插件对c++11的支持只需要这样几句配置即可let g:syntastic_cpp_compiler = 'g++'let g:syntastic_cpp_compiler_options = ' -std=c++1...

    伏草惟存 发布于:2017年06月14 14:09:09