分类: Linux系统

  • DenyHosts 安装及配置详解

    DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重 复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。

    下面进入主题。

    1。安装脚本
    要求安装服务器能上网,并建立 /workspace目录

    #############################1##################################
    #!/bin/bash

    wget http://sourceforge.net/projects/denyhosts/files/denyhosts/2.6/DenyHosts-2.6.tar.gz
    #下载软件

    tar -zxvf DenyHosts-2.6.tar.gz
    #解压

    mv DenyHosts-2.6 denyhost
    #为了方便改个名

    cd denyhost/
    #进入目录

    yum install python -y
    #安装python

    python setup.py install
    #安装denyhost,脚本

    cd /usr/share/denyhosts/
    #进入配置目录

    cp daemon-control-dist daemon-control
    #为了方便改变配置文件名称

    cp denyhosts.cfg-dist denyhosts.cfg
    #修改服务文件名称

    chown root daemon-control
    chmod 700 daemon-control
    #提高安全级别,修改权限

    ln -s /usr/share/denyhosts/daemon-control /etc/init.d/denyhosts
    #创建启动服务连接

    chkconfig denyhosts on
    #添加启动项

    cp denyhosts.cfg denyhosts.cfg.bak
    #备份配置文件,为修改配置做准备

    cat /workspace/denyhost.txt > /usr/share/denyhosts/denyhosts.cfg
    #将配置文件内容导入配置文件(我的配置文件安装之前已经配置好了!)

    /etc/init.d/denyhosts start
    #启动服务

    echo install succeed!

    2.配置文件内容

    cat /workspace/denyhost.txt > /usr/share/denyhosts/denyhosts.cfg
    ###########################2##################################

    [root@107 workspace]# more denyhost.txt
    SECURE_LOG = /var/log/secure
    #ssh日志文件

    HOSTS_DENY = /etc/hosts.deny
    #将阻止IP写入到hosts.deny

    PURGE_DENY = 5m
    #过多久后清除已经禁止的,其中w代表周,d代表天,h代表小时,s代表秒,m代表分钟

    BLOCK_SERVICE = sshd
    #阻止服务名

    DENY_THRESHOLD_INVALID = 5
    #允许无效用户(在/etc/passwd未列出)登录失败次数,允许无效用户登录失败的次数.

    DENY_THRESHOLD_VALID = 5
    #允许普通用户登录失败的次数

    DENY_THRESHOLD_ROOT = 5
    #允许root登录失败的次数

    DENY_THRESHOLD_RESTRICTED = 1
    #设定 deny host 写入到该资料夹

    WORK_DIR = /usr/share/denyhosts/data
    #将deny的host或ip纪录到Work_dir中
    SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS = YES

    HOSTNAME_LOOKUP=YES
    #是否做域名反解

    LOCK_FILE = /var/lock/subsys/denyhosts
    #将DenyHOts启动的pid纪录到LOCK_FILE中,已确保服务正确启动,防止同时启动多个服务。

    ADMIN_EMAIL = denyhosts@163.com
    #设置管理员邮件地址
    SMTP_HOST = localhost
    SMTP_PORT = 25
    SMTP_FROM = DenyHosts <nobody@localhost>
    SMTP_SUBJECT = DenyHosts Report

    AGE_RESET_VALID=1d
    #有效用户登录失败计数归零的时间

    AGE_RESET_ROOT=1d
    #root用户登录失败计数归零的时间

    AGE_RESET_RESTRICTED=5d
    #用户的失败登录计数重置为0的时间(/usr/share/denyhosts/data/restricted-usernames)

    AGE_RESET_INVALID=10d
    #无效用户登录失败计数归零的时间

    DAEMON_LOG = /var/log/denyhosts
    #自己的日志文件

    DAEMON_SLEEP = 30s

    DAEMON_PURGE = 5m
    #该项与PURGE_DENY 设置成一样,也是清除hosts.deniedssh 用户的时间

    3.其它
    #############################3###############################

    如果想删除一个已经禁止的主机IP,并加入到允许主机例表,只在 /etc/hosts.deny 删除是没用的。需要进入 /var/lib/denyhosts 目录,进入以下操作:

    1、停止DenyHosts服务:$ sudo service denyhosts stop

    2、在 /etc/hosts.deny 中删除你想取消的主机IP

    3、编辑 DenyHosts 工作目录的所有文件,通过
    $ sudo grep 192.168.1.191 /usr/share/denyhosts/data/*

    然后一个个删除文件中你想取消的主机IP所在的行:
    */usr/share/denyhosts/data/hosts
    */usr/share/denyhosts/data/hosts-restricted
    */usr/share/denyhosts/data/hosts-root
    */usr/share/denyhosts/data/hosts-valid
    */usr/share/denyhosts/data/users-hosts
    4、添加你想允许的主机IP地址到
    /var/lib/denyhosts/allowed-hosts

    vi /usr/share/denyhosts/data/allowed-hostsps
    # We mustn’t block localhost
    127.0.0.1
    192.168.1.*

    5、启动DenyHosts服务: service denyhosts start

     

    报错排查

    #service denyhost start
    starting DenyHosts: /usr/bin/env python /usr/bin/denyhosts.py –daemon

    –config=/usr/share/denyhosts/denyhosts.cfg
    python: can’t open file ‘/usr/bin/denyhosts.py’: [Errno 2] No such file or

    directory

    cd /usr/share/denyhosts/
    vi daemon-control
    DENYHOSTS_BIN = “/usr/bin/denyhosts.py”
    改为
    DENYHOSTS_BIN = “/usr/local/bin/denyhosts.py”

    cd /usr/local/lib/python2.7/site-packages/
    cp -rp DenyHosts /usr/lib/python2.4/site-packages/
    /etc/init.d/denyhosts restart

     

    #############################3###############################

    如果想删除一个已经禁止的主机IP,并加入到允许主机例表,只在 /etc/hosts.deny 删除是没用的。需要进入 /var/lib/denyhosts 目录,进入以下操作:

    1、停止DenyHosts服务:$ sudo service denyhosts stop

    2、在 /etc/hosts.deny 中删除你想取消的主机IP

    3、编辑 DenyHosts 工作目录的所有文件,通过
    $ sudo grep 192.168.1.191 /usr/share/denyhosts/data/*

    然后一个个删除文件中你想取消的主机IP所在的行:
    * /usr/share/denyhosts/data/hosts
    * /usr/share/denyhosts/data/hosts-restricted
    * /usr/share/denyhosts/data/hosts-root
    * /usr/share/denyhosts/data/hosts-valid
    * /usr/share/denyhosts/data/users-hosts
    4、添加你想允许的主机IP地址到
    /var/lib/denyhosts/allowed-hosts

    vi  /usr/share/denyhosts/data/allowed-hostsps
    # We mustn’t block localhost
    127.0.0.1
    192.168.1.*

    5、启动DenyHosts服务: service denyhosts start

  • WordPress 3D旋转标签云

    这个3D标签云可不是N年前的那个Flash版的 wp-cumulus, 这个3D旋转标签云完全使用JS代码编写,很小只有几K,不用担心像垃圾Flash对资源的耗费。

    具体效果看本文的侧边栏标签云。

    下面以WordPress默认主题Twenty Fifteen为例,将这个炫酷的特效加到你的博客上。

    一,添加生成3D效果的脚本

    将下载的3d.js脚本放到Twenty Fifteen主题js目录中。

    注:这个3D旋转标签云有两种效果的JS文件,我用的是第二种。

    打开Twenty Fifteen主题 functions.php 模板文件,在大约252行,添加:

    1. wp_enqueue_script( ‘3d’, get_template_directory_uri() . ‘/js/3d.js’ );

    或者直接将下面代码加到主题header模板

    1. <script type=“text/javascript” src=“<?php bloginfo(‘template_directory’); ?>/js/3d.js”></script>

    二,添加样式

    将下面的样式添加到主题style.css的最后即可:

    1. #tag_cloud-2 {
    2.     position:relative;
    3.     height:340px;
    4.     margin10px auto 0;
    5. }
    6. #tag_cloud-2 a {
    7.     position:absolute;
    8.     color#fff;
    9.     text-aligncenter;
    10.     text-overflow: ellipsis;
    11.     whitewhite-spacenowrap;
    12.     top:0px;
    13.     left:0px;
    14.     padding3px 5px;
    15.     bordernone;
    16. }
    17. #tag_cloud-2 a:hover {
    18.     background#d02f53;
    19.     displayblock;
    20. }
    21. #tag_cloud-2 a:nth-child(n) {
    22.     background#666;
    23.     border-radius: 3px;
    24.     displayinlineblock;
    25.     line-height18px;
    26.     margin: 0 10px 15px 0;
    27. }
    28. #tag_cloud-2 a:nth-child(2n) {
    29.     background#d1a601;
    30. }
    31. #tag_cloud-2 a:nth-child(3n) {
    32.     background#286c4a;
    33. }
    34. #tag_cloud-2 a:nth-child(5n) {
    35.     background#518ab2;
    36. }
    37. #tag_cloud-2 a:nth-child(4n) {
    38.     background#c91d13;
    39. }

    三、修改对应选择器名称

    比较麻烦点的是,其中 #tag_cloud-2 需根据不同情况加以修改,比如查看标签云小工具的网页源代码显示的是:

    1. <aside id=“tag_cloud-3” class=“widget widget_tag_cloud”>
    2. <h2 class=“widget-title”>标签</h2>

    你就需要将 #tag_cloud-2改为#tag_cloud-3,同时将3d.js中的tag_cloud-2也改为tag_cloud-3.

    这个3D旋转标签云本身是支持低版本IE的,不过本例中配套的样式使用了CSS3特效,所以在低版本IE上标签背影色会不显示。

  • IOS本地YUM

    –1、挂载本地iso文件到/mnt/cdrom,如果没有该目录创建一下
    mount -o loop /soft/rhel-server-6.4-x86_64-dvd.iso /mnt/cdrom

    –2、新建repo文件参数如下:
    [root@test ~]# cd /etc/yum.repos.d/
    [root@test yum.repos.d]# more public-yum-el5.repo
    [rhel6]
    name = RHEL6.4
    baseurl=file:///mnt/cdrom/Server/
    gpgcheck=0
    enabled=1

    –3、保存退出,测试yum是否ok,如果如下所示,说明已配好,可以使用yum命令安装包了
    [root@test yum.repos.d]# yum list gcc
    Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
    This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
    rhel6                                                                                                        | 3.9 kB     00:00 …
    Installed Packages
    gcc.x86_64

  • CentOS7 rc.loal执行

    不会开机执行的开机启动文件 /etc/rc.local

    检查/etc/rc.local文件内容

    #!/bin/bash
    # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
    #
    # It is highly advisable to create own systemd services or udev rules
    # to run scripts during boot instead of using this file.
    #
    # In constrast to previous versions due to parallel execution during boot
    # this script will NOT be run after all other services.
    #
    # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
    # that this script will be executed during boot.
    必须执行“chmod +x /etc/rc.d/rc.local”来确保确保这个脚本在引导时执行。
  • CentOS7修改启动的level

    CentOS7里面 修改/etc/inittab 已经没用了

    systemd uses ‘targets’ instead of runlevels.

    systemctl set-default multi-user.target      设定默认为字符界面,也就是3
    systemctl set-default graphical.target        图形界面   5

  • YUM使用国内的阿里云镜像源

    当我们把CentOS7安装好以后,可以使用这个脚本来使用国内的阿里云镜像源

    #!/bin/bash
    mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
    mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    yum makecache

    有了国内的源地址,后面安装东西就方便了。

  • CentOS 7添加yum源-转

    RedHat下主要有两个distribution,一曰 RHEL(Red Hat Enterprise Linux) 一曰 Fedora.前者主要是供服务器使用,优点是稳定,缺点是老的掉牙,后者是供桌面使用的,优点是特别新,repo的速度几乎可以和archlinux媲美,缺点是发布两年EOL(End-of-life_(product))就到了,我见过某服务器从不关机,也不更新Kernel,一直缝缝补补开了数年的,用Fedora简直是作死.

    但若不是财大气粗(比如某有数千台曙光各种RHEL的xx中心,让人羡慕的流口水),很多服务器选择CentOS作为服务器的OS,因为基于GPL License的RHEL是提供binary file 和 source code 的,有社区将source code 再编译为 binary file ,取名为CentOS,所谓社区操作系统.对此RHEL是持认可–至少是理解的态度.因此,CentOS基本可以认为是RHEL的免费版本,据传性能还是有点差距并且不提供官方技术支持.若在服务器使用,它十年的EOL也足以让服务器免去很多维护了.

    今年的7月份,CentOS发布CentOS 7,对应于Red Hat在6月发布的RHEL 7,Life Cycle从今年一直持续到2024年. 更重要的是,这位同志终于愿意从2.6.x的kernel升到3.x了,要知道,截止目前,kernel早已升级到3.15.8了,这得落后多少年了啊, 对应的gcc也从4.4.7升级到了4.8.x,终于可以在服务器上编译带–std=c++11参数的代码而不必自己编译个编译器先了泪目.

    总之,很高兴的直接装了个新的CentOS 7,然后习惯的去找RPM fusion的源,然后悲剧的发现居然目前还没有提供…额,没有只有基础仓库的CentOS 7那得多不方便啊囧,只能找一些其它的源来应付下先.

    找了下,这里这里我找到一些相关内容,照着做了下,我最需要的几个东西都可以找到.

    RHEL 官方扩展源

    首先我们可以使用下RHEL的官方源.命令很简单

    # yum localinstall http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm -y

    若发现它报个404之类的,去 http://dl.fedoraproject.org/pub/epel/7/x86_64/e/ 找找看 epel-release 开头的rpm package,或许有更新,总之装个epel-release*.rpm后,看/etc/yum.repos.d/文件夹下就多了两个文件如下:

    -rw-r--r-- 1 root root  957 Jun 19 07:20 epel.repo
    -rw-r--r-- 1 root root 1056 Jun 19 07:20 epel-testing.repo

    你若没有特别的需求,你应该只要有epel.repo就可以.

    epel.repo

    [epel]
    name=Extra Packages for Enterprise Linux 7 - $basearch
    #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
    mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&amp;amp;arch=$basearch
    failovermethod=priority
    enabled=1
    gpgcheck=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
     
    [epel-debuginfo]
    name=Extra Packages for Enterprise Linux 7 - $basearch - Debug
    #baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch/debug
    mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-7&amp;amp;arch=$basearch
    failovermethod=priority
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
    gpgcheck=1
     
    [epel-source]
    name=Extra Packages for Enterprise Linux 7 - $basearch - Source
    #baseurl=http://download.fedoraproject.org/pub/epel/7/SRPMS
    mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-7&amp;amp;arch=$basearch
    failovermethod=priority
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
    gpgcheck=1

    你也可以直接把上面那些内容写到/etc/yum.repos.d/epel.repo文件中.
    然后:# yum makecache  这样就可以用了。

    尝试是否成功也很容易

    # yum repolist
    ......
    repo id      repo name                                       status
    epel/x86_64  Extra Packages for Enterprise Linux 7 - x86_64  5,425
    ......

    发现有高亮一栏就算过了.

    remi源

    安装和RHEL差不多,这个源主要是提供了一些php相关的扩展库,若不使用php,意义感觉不算大.

    # yum localinstall http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

    同样可以在/etc/yum.repos.d/中看到多了个remi.repo
    编辑可以看到内容如下:

    [remi]
    name=Les RPM de remi pour Enterprise Linux 7 - $basearch
    #baseurl=http://rpms.famillecollet.com/enterprise/7/remi/$basearch/
    mirrorlist=http://rpms.famillecollet.com/enterprise/7/remi/mirror
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
     
    [remi-php55]
    name=Les RPM de remi de PHP 5.5 pour Enterprise Linux 7 - $basearch
    #baseurl=http://rpms.famillecollet.com/enterprise/7/php55/$basearch/
    mirrorlist=http://rpms.famillecollet.com/enterprise/7/php55/mirror
    # WARNING: If you enable this repository, you must also enable &amp;quot;remi&amp;quot;
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
     
    [remi-php56]
    name=Les RPM de remi de PHP 5.6 pour Enterprise Linux 7 - $basearch
    #baseurl=http://rpms.famillecollet.com/enterprise/7/php56/$basearch/
    mirrorlist=http://rpms.famillecollet.com/enterprise/7/php56/mirror
    # WARNING: If you enable this repository, you must also enable &amp;quot;remi&amp;quot;
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
     
    [remi-test]
    name=Les RPM de remi en test pour Enterprise Linux 7 - $basearch
    #baseurl=http://rpms.famillecollet.com/enterprise/7/test/$basearch/
    mirrorlist=http://rpms.famillecollet.com/enterprise/7/test/mirror
    # WARNING: If you enable this repository, you must also enable &amp;quot;remi&amp;quot;
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
     
    [remi-debuginfo]
    name=Les RPM de remi pour Enterprise Linux 7 - $basearch - debuginfo
    baseurl=http://rpms.famillecollet.com/enterprise/7/debug-remi/$basearch/
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
     
    [remi-php55-debuginfo]
    name=Les RPM de remi de PHP 5.5 pour Enterprise Linux 7 - $basearch - debuginfo
    baseurl=http://rpms.famillecollet.com/enterprise/7/debug-php55/$basearch/
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
     
    [remi-php56-debuginfo]
    name=Les RPM de remi de PHP 5.6 pour Enterprise Linux 7 - $basearch - debuginfo
    baseurl=http://rpms.famillecollet.com/enterprise/7/debug-php56/$basearch/
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
     
    [remi-test-debuginfo]
    name=Les RPM de remi en test pour Enterprise Linux 7 - $basearch - debuginfo
    baseurl=http://rpms.famillecollet.com/enterprise/7/debug-test/$basearch/
    enabled=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

    默认enable全是0,根据需要自行将enable改为1,注意高亮的第五行enable必须改为1 remi才能用.

    然后makecache 测试什么的就和RHEL一样不细说了.

    puias源

    puias 是基于RH的一个扩展distribution和mirror。无论是CentOS 5,6还是7都可以得到它的一些扩展的程序。尤其是科学计算领域的一些模块,果断是要入手的。目前它由普林斯顿高能所维护。
    你去它的官网可以得到很多说明。比如这个页面
    我们可以只选择计算的部分如下:

    puias-computational.repo

    [PUIAS_computational]
    name=PUIAS computational Base $releasever - $basearch
    mirrorlist=http://puias.math.ias.edu/data/puias/computational/$releasever/$basearch/mirrorlist
    #baseurl=http://puias.math.ias.edu/data/puias/computational/$releasever/$basearch
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puias

    /etc/yum.repo.d/下建立文件,保存即可。

    因为我们这次没有使用rpm包,所以需要import一下GPG KEY.

    RepoForge源

    RepoForge原名RPMForge,是一个维护得很不错的repo站点.点击此处可以看到RHEL各版本的下载链接.拿到链接后

    yum localinstall xxx.rpm -y

    即可完成安装。
    目前为止似乎还没有把centos 7加上,但是没关系,随便找个6的链接,把6变成7即可获得该rpm包的大致位置。当前我得到的位置是 : http://apt.sw.be/redhat/el7/en/x86_64/rpmforge/RPMS/
    进入后找到rpmforge-release-**的文件,获得下载链接,安装即可。

    yum localinstall http://apt.sw.be/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm -y
    yum makecache

    CentOS中将DVD作为默认yum源的设置方法  http://www.linuxidc.com/Linux/2015-01/111266.htm

    RedHat 6.2 Linux修改yum源免费使用CentOS源 http://www.linuxidc.com/Linux/2013-07/87383.htm

    配置EPEL YUM源 http://www.linuxidc.com/Linux/2012-10/71850.htm

    Redhat 本地yum源配置 http://www.linuxidc.com/Linux/2012-11/75127.htm

    yum的配置文件说明 http://www.linuxidc.com/Linux/2013-04/83298.htm

    RedHat 6.1下安装yum(图文) http://www.linuxidc.com/Linux/2013-06/86535.htm

    YUM 安装及清理 http://www.linuxidc.com/Linux/2013-07/87163.htm

    CentOS 6.4上搭建yum本地源 http://www.linuxidc.com/Linux/2014-07/104533.htm

    更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

    本文永久更新链接地址http://www.linuxidc.com/Linux/2015-03/114690.htm

  • Linux安装XRDP实现远程桌面访问

    Ubuntu用户,可以简单的使用命令“sudo apt-get install xrdp”来安装xrdp。
    安装完毕之后,第一次使用可以用命令“sudo service xrdp start”来启动服务,
    之后,就可以在别的计算机上用任何支持RDP协议的客户端来访问这个桌面了。
    Centos下安装XRDP服务
    1.配置环境:
    yum install gcc pam-devel openssl-devel -y
    2.进入指定目录下载并解压xrdp:
    wget http://xsdou.googlecode.com/files/xrdp-0.4.2.tar.gz
    tar -xzvf xrdp-0.4.2.tar.gz
    3.进入解压后xrdp的目录编译和安装:
    cd xrdp-0.4.2
    make
    make install
    4.启动xrdp:
    cd /usr/local/xrdp
    ./xrdp_control.sh start
    5.xrdp的配置文档在/etc/xrdp目录下的xrdp.ini和sesman.ini
    启动好xrdp,就可以通过客户端的rdp client连接到服务器上,win下可以用mstsc,
    linux下可以用rdesktop或者krdp。
    module 选择为:sesman-Xvnc

    xrdp需要vncserver,所以还要安装vncserver
    准备好后,可以通过解压出来的目录下的instfiles目录下的xrdp-control.sh脚本启动xrdp
    xrdp-control.sh start
    可以把此脚本添加到/etc/rc.d/init.d/中,让它开机自动运行。
    启动好xrdp,就可以通过客户端的rdp client 连接到服务器上,win下可以用mstsc,linux下可以用rdesktop或者krdp。
    module 选择为:sesman-Xvnc
    xrdp的配置文档在/etc/xrdp目录下的xrdp.ini和sesman.ini
    xrdp.ini 关键部分在globals

    [globals]
    bitmap_cache=yes 位图缓存
    bitmap_compression=yes 位图压缩
    port=3389 监听端口
    crypt_level=low 加密程度(low为40位,high为128位,medium为双40位)
    channel_code=1 不知道是什么

    sesman.ini

    [Globals]
    ListenAddress=127.0.0.1 监听ip地址(默认即可)
    ListenPort=3350 监听端口(默认即可)
    EnableUserWindowManager=1 1为开启,可让用户自定义自己的启动脚本
    UserWindowManager=startwm.sh
    DefaultWindowManager=startwm.sh

    [Security]
    AllowRootLogin=1 允许root登陆
    MaxLoginRetry=4 最大重试次数
    TerminalServerUsers=tSUSErs 允许连接的用户组(如果不存在则默认全部用户允许连接)
    TerminalServerAdmins=tsadmins 允许连接的超级用户(如果不存在则默认全部用户允许连接)

    [Sessions]
    MaxSessions=10 最大会话数
    KillDisconnected=0 是否立即关闭断开的连接(如果为1,则断开连接后会自动注销)
    IdleTimeLimit=0 空闲会话时间限制(0为没有限制)
    DisconnectedTimeLimit=0 断开连接的存活时间(0为没有限制)

    [Logging]
    LogFile=./sesman.log 登陆日志文件
    LogLevel=DEBUG 登陆日志记录等级(级别分别为,core,error,warn,info,debug)
    EnableSyslog=0 是否开启日志
    SyslogLevel=DEBUG 系统日志记录等级

    装好后,我们就可以直接从win系统下利用mstsc直接进行登陆,相当方便,如果是linux,可以用rdesktop。

    CentOS安装XRDP实现远程桌面访问

    rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
      安装源的 key:
     rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
     yum install -y xrdp vnc-server
    编辑 /etc/sysconfig/vncservers 文件,让后台工作的 vnc-server 能够正常启动加载,还需要编辑 /etc/group 文件
    编辑 vncservers 文件,在文件的末尾添加如下两行。
    vi /etc/sysconfig/vncservers
    
    VNCSERVERS="2:root"
    VNCSERVERARGS[1]="-geometry 1024x768"
    获取 root 权限,启动 xrdp 和 vcnserver 功能。
    vncserver
    You will require a password to access your desktops.
    Password:
    Verify:
    Warning: yitongvbox:1 is taken because of /tmp/.X1-lock
    Remove this file if there is no X server yitongvbox:1
    xauth:  creating new authority file /root/.Xauthority
    xauth: (stdin):1:  bad display name “yitongvbox:2” in “add” command

    New ‘yitongvbox:2 (root)’ desktop is yitongvbox:2

    Creating default startup script /root/.vnc/xstartup

    Starting applications specified in /root/.vnc/xstartup

    Log file is /root/.vnc/yitongvbox:2.log

    service xrdp start

    iptables -A INPUT -m state –state NEW -m tcp -p tcp –dport 3389 -j ACCEPT
    service iptables save

    保存并重启防火墙配置后,我们需要设置让 xrdp 和 vncserver 随开机加载启动。
    chkconfig xrdp on
    chkconfig vncserver on

     

     

     

     

     

     

     

     

     

     

  • putty不用密码登陆SHH的方法(转)

    • 生成 public/private 
    • 这个好办, puttygen 就行了. 出现如图的界面.
      ssh1
      选中下面的 SSH2RSA, 再点击 Generate 就会生成如图的界面.
      ssh2
      访问.
      这个比在 Linux 上要麻烦一点. 因为没有默认的用户名, 也没用默认的 home. 所以, 用如下语法来访问.
    • 代码:
    •   putty -i c:\usr\bin\ssh-private.ppk -l wangzw 192.168.21.33
    •   其中 192.168.21.33 是主机IP(主机名也可以), -l wangzw 是用户名, -i c:\usr\bin\ssh-private.ppk 是指定用哪个 key 来认证.
    •   这样就搞定了.
    •   因为那个进入的语法太麻烦, 写了一个 linux文件, 里面就只有那一行. 然后把这个文件放在桌面上, 鼠标双击就进入 Linux 了.

    注意事项

    • 在做第二步的时候过程中要不停的动鼠标, 因为它好象是用这个做为随机数的种子的. 然后点击Save private key 来保存私钥. 公钥可以保存, 也可以不保存. 全部选中如上图的蓝色部分. 然后 ctrl+c 保存到剪贴板. 登陆到你想要访问的主机上, 打开 ~/.ssh/authorized_keys 文件, 将刚刚保存到剪贴板的东东粘贴过去. 保存后就行了.
  • PECL简单安装phpredis

    通过PECL很简单的就能安装上phpredis了,不需要再去下载源码编译了

    安装命令:pecl install redis

    添加 /etc/php.d/redis.ini,重启nginx & php-fpm

    ; Enable redis extension module
    extension=redis.so

    phpredis的PECL仓库地址:http://pecl.php.net/package/redis

    phpredis的GITHUB地址:http://github.com/nicolasff/phpredis

    Redis官网:http://www.redis.io/