念念不忘,必有回响
June 2, 2016

使用 virt-what 检测VPS虚拟化架构

Linux 系统使用 virt-what 检测VPS虚拟化架构。virt-what 可以检查到以下虚拟化创建的 VPS:VMware、Hyper-V、VirtualPC、VirtualBox、OpenVZ / Virtuozzo、Linux-VServer、UML、IBM PowerVM Lx86 Linux/x86 emulator、Hitachi Virtualization Manager (HVM) Virtage logical 、partitioning、IBM SystemZ、Parallels、Xen、QEMU/KVM

安装

ubuntu/debian系统安装 virt-what

apt-get install virt-what

centos系统安装 virt-what

yum install virt-what -y

运行

# virt-what 
vmware

实验机使用的 vmware 虚拟化架构

May 30, 2016

PPTP VPN服务器上配置 FreeRADIUS+daloRADIUS

前置条件

首先要保证使用 chap-secrets 验证的 PPTP 服务能够正常使用。关于配置简单 PPTP VPN 的方法不在本文的范围之内,请参考《CentOS 6配置VPN服务PPTP》

其次,你需要在服务器上安装好 HTTP+PHP+MySQL 环境,本例中使用 Apache 作为 Web 服务器。此外 PHP需要安装 PEAR。

pear的安装

wget http://pear.php.net/go-pear.phar | php
php go-pear.phar

配置FreeRADIUS

1. 登入终端后,首先安装 FreeRAIUS

yum install freeradius freeradius-mysql freeradius-utils

2. 安装完后,我们编辑 /etc/raddb/users ,在文件开头加上:

testing Cleartext-Password := "password"

3. 启动 radiusd,第一次启动会生成密钥,稍等片刻即可。使用-X参数可以让调试信息直接输出屏幕:

radiusd -X

4. 新打开一个SSH终端,测试服务器是否连通:

radtest testing password 127.0.0.1 0 testing123

如果看到 Access-Accept 就说明连接成功了。如果看到类似“Ignoring request to authentication address * port 1812 from unknownclient”的文字,可能需要去修改 /etc/raddb/clients.conf ,将 client localhost 段下的 ipaddr 改为服务器的IP,而不是127.0.0.1。

测试连接成功后,我们可以把 users 里临时加上去的第一行删除。

- 阅读剩余部分 -

May 25, 2016

Fancy Index

Synopsis

The Fancy Index module makes possible the generation of file listings, like the built-in autoindex module does, but adding a touch of style. This is possible because the module module allows a certain degree of customization of the generated content:

  • Custom headers (either local or stored remotely).
  • Custom footers (either local or stored remotely).
  • Add you own CSS style rules.
  • Allow choosing to sort elements by name (default), modification time, or size; both ascending (default), or descending (new in 0.3.3).

Building

  1. Unpack the NGINX sources.
    $ gunzip -c nginx-?.?.?.tar.gz | tar -xvf -
  1. Download the latest version using Git.
    $ git clone https://github.com/aperezdc/ngx-fancyindex.git ngx-fancyindex
  1. Change to the directory which contains the NGINX sources, run the configuration script with the desired options and be sure to put an  --add-module flag pointing to the directory which contains the source of the fancy indexing module.
    $ cd nginx-?.?.?
    $ ./configure --add-module=../ngx-fancyindex  [extra desired options]
  1. Build and install the software.
    $ make
    $ sudo make install
  1. Configure NGINX by using the modules’ configuration directives.

Example Enable

You can test the default built-in style by adding the following lines into a server section in your NGINX configuration file:

location / {
  fancyindex on;              // Enable fancy indexes.
  fancyindex_exact_size off;  // Output human-readable file sizes.
}

May 18, 2016

CentOS 7 安装配置 shadowsocks

CentOS 7 开始默认使用Systemd作为开启启动脚本的管理工具,Shadowsocks则是当前比较受欢迎的科学上网工具,本文将介绍如何在 CentOS 下安装和配置 Shadowsocks 服务。

安装 pip

pip 是 python 的包管理工具。在本文中将使用 python 版本的 shadowsocks,此版本的 shadowsocks 已发布到 pip 上,因此我们需要通过 pip 命令来安装。

在控制台执行以下命令安装 pip:

# curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py"
# python get-pip.py

安装配置 shadowsocks

在控制台执行以下命令安装 shadowsocks:

# pip install --upgrade pip
# pip install shadowsocks

安装完成后,需要创建配置文件 /etc/shadowsocks.json ,内容如下:

{
  "server": "0.0.0.0",
  "server_port": 8388,
  "password": "uzon57jd0v869t7w",
  "method": "aes-256-cfb"
}

说明:

  • method为加密方法,可选aes-128-cfb, aes-192-cfb, aes-256-cfb, bf-cfb, cast5-cfb, des-cfb, rc4-md5, chacha20, salsa20, rc4, table
  • server_port为服务监听端口
  • password为密码,可使用密码生成工具生成一个随机密码

以上三项信息在配置 shadowsocks 客户端时需要配置一致。

配置自启动

新建启动脚本文件 /etc/systemd/system/shadowsocks.service ,内容如下:

[Unit]
Description=Shadowsocks
[Service] TimeoutStartSec=0 ExecStart=/usr/bin/ssserver -c /etc/shadowsocks.json
[Install] WantedBy=multi-user.target

执行以下命令启动 shadowsocks 服务:

# systemctl enable shadowsocks
# systemctl start shadowsocks

为了检查 shadowsocks 服务是否已成功启动,可以执行以下命令查看服务的状态:

# systemctl status shadowsocks -l
May 16, 2016

解决open_basedir restriction in effect报错

一独立服务器用户在服务器安装了讯搜插件,结果打开页面报错:

Warning: require_once() [function.require-once]: open_basedir restriction in effect. File(/usr/local/xunsearch/sdk/php/lib/XS.php) is not within the allowed path(s): (/home/admin/:/tmp:/var/tmp:/usr/local/lib/php/) in /ecms/search.php on line 11 

了解 open_basedir

Open_basedir 是PHP设置中为了防御PHP跨目录进行文件(目录)读写的方法,所有PHP中有关文件读、写的函数都会经过open_basedir 的检查。

Open_basedir 实际上是一些目录的集合,在定义了 open_basedir 以后,php可以读写的文件、目录都将被限制在这些目录中。

设置open_basedir的方法

在 linux 下,不同的目录由“:”分割,如“/var/www/:/tmp/”;在 Windows 下不同目录由“;”分割,如“c:/www;c:/windows/temp”。

解决方法

编辑 httpd.conf  ,添加 usr/local/xunsearch 目录执行权限

vim httpd.conf
php_admin_value open_basedir /home/admin/:/tmp:/var/tmp:/usr/local/lib/php/:/usr/local/xunsearch/ 
/etc/init.d/httpd restart