11月 282015
 

如果使用 FTP 进行安装,升级或者迁移 WordPress 博客,我们需要把 WordPress 安装包或者资料下载到本地,然后上传到新的服务器,再进行安装,升级或者迁移,这样不仅耗时费力,如果主机在国外的话,传送几百兆数据将会是一场噩梦。

其实如果主机支持 SSH 的话,这一切都会变得很简单并且可以迅速完成,下面我讲解下如何使用 SSH 安装或者迁移 WordPress 博客,以及使用 SSH 体验 WordPress 正在开发的功能。

使用 SSH 安装 WordPress 博客

如果只是在主机上安装一个全新的 WordPress 博客,那么使用 SSH 可以在在非常短的时间完成就完成这一操作:

  1. 使用 SSH 登录到主机,并转到要安装 WordPress 博客的目录之下。
  2. 使用下面命令从 WordPress.org 下载新版本的 WordPress 安装包。
    wget https://wordpress.org/latest.tar.gz

    这个下载速度会非常快,速度快的话都可以达到 5M/S。

  3. 在下载完成之后你需要通过 ls 命令看看下载下来的文件。
  4. 使用下面命令解开压缩包:
    tar -xf latest.tar.gz
  5. 最后就是一般 WordPress 安装的过程了,这里就不再重复了。

使用 SSH 升级 WordPress

如果是在主机上升级现有的的 WordPress 博客,步骤和安装基本类似,不过有个覆盖的过程:

  1. 下载和解压缩 WordPress 安装包的过程基本和上面一样,
  2. 因为 CentOS 默认把 cp 映射为 cp -i 覆盖会提示,所以咱把它复位:
    alias cp=cp
  3. 把 wordpress 目录下的文件复制并覆盖当前目录的文件
    cp -rf wordpress/* .
  4. 删除下载包和解压缩的 wordpress 文件夹
    rm -rf wordpress/ latest.tar.gz
  5. 最后进入 WordPress 后台,升级下数据库了。

使用 SSH 迁移 WordPress 博客

不得不承认搬家是我们的常态,如果你要迁移 WordPress 博客到新主机,以前搬家是一场噩梦,那么现在使用 SSH 进行 WordPress 博客迁移也是一段愉快的旅程。

  1. 使用 SSH 登陆到旧主机,使用 mysqldump 命令把数据库导出到一个文件:
    mysqldump -user=[数据库用户名] -p [数据库名] > [备份文件名].sql

    输入上面的命令之后,它会提示你输入数据库密码,输入之后就会把你要倒的数据库备份到一个文件中,把这个文件复制到 HTTP 服务器的根目录下。

  2. 转到根目录,使用以下命令打包并压缩所有文件:
    tar -czvf fairyfish.tar.gz *
  3. 使用 SSH 登录新的服务器,使用下面文件解开压缩包:
    tar -xzvf fairyfish.tar.gz
  4. 登录新服务器的 MySQL
    mysql -u dbuser -p
  5. 如果新的服务的器数据库没有创立,那么可以在主机管理后台创建数据库,也可以使用 SSH 创建:
    create database wordpress;
  6. 离开数据库,使用 MySQLDump 导入数据库。
    mysqldump -user=[数据库用户名] -p [数据库名] < [备份文件名].sql
    [/code]
    </li>
    <li>删除迁移过来的压缩包 fairyfish.tar.gz 和数据库备份文件,大功告成。</li>
    </ol>
    
    <h2 ><a name="toc-4"></a>使用 SSH 体验 WordPress 正在开发的功能</h2>
    
    如果你是测试达人,想体验 WordPress 正在开发的功能,那么你可以使用 SVN 获取 WordPress 的测试版本:
    
    <ol>
    	<li>登陆 SSH。</li>
    	<li>使用下面命令获取 SVN 版本
    [code]
    svn checkout http://svn.automattic.com/wordpress/trunk/ .
  7. 以后如果要获取更新,需要使用下面命令就获取 WordPress 最新的开发版本:
    svn update

SSH 使用简单总结

上面简单介绍了使用 SSH 安装和迁移 WordPress 博客,以及使用 SSH 体验 WordPress 正在开发的功能,其实 SSH 还可以帮我们干很多事情,使用 SSH 管理服务器是非常愉快的事情,如给服务器安装 Memcahced 等,但是这一切的前提是你的服务器需要支持 SSH

 Posted by at 上午 10:28
11月 272015
 

一、问题

当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩展内存的方法。

二、解决方法

在执行free -m的是时候提示Cannot allocate memory:

(swap文件可以放在自己喜欢的位置如/var/swap)

[root@Byrd byrd]# free -m
total used free shared buffers cached
Mem: 512 108 403 0 0 28
-/+ buffers/cache: 79 432
Swap: 0 0 0
[root@Byrd ~]# mkdir /opt/images/
[root@Byrd ~]# rm -rf /opt/images/swap
[root@Byrd ~]# dd if=/dev/zero of=/opt/images/swap bs=1024 count=2048000
2048000+0 records in
2048000+0 records out
2097152000 bytes (2.1 GB) copied, 82.7509 s, 25.3 MB/s
[root@Byrd ~]# mkswap /opt/images/swap
mkswap: /opt/images/swap: warning: don’t erase bootbits sectors
on whole disk. Use -f to force.
Setting up swapspace version 1, size = 2047996 KiB
no label, UUID=59daeabb-d0c5-46b6-bf52-465e6b05eb0b
[root@hz mnt]# swapon /opt/images/swap
[root@hz mnt]# free -m
total used free shared buffers cached
Mem: 488 481 7 0 6 417
-/+ buffers/cache: 57 431
Swap: 999 0 999

内存太小,增加内存可以解决。

使用完毕后可以关掉swap:

[root@hz mnt]# swapoff swap
[root@hz mnt]# rm -f /opt/images/swap

swap文件也可以不删除,留着以后使用,关键是你的虚拟机硬盘够用。

 Posted by at 上午 6:42
12月 182013
 

denyhost是一个由python写的脚本,目前最新版本为2.6,可以实现对自动查找恶意ssh连接,然后把恶意ip加入到/etc/hosts.deny文件里面,以实现对服务器的安全防护

 

  1. 安装denyhost
  2. # apt-get install mailutils            //安装邮件功能,以实现当有黑客攻击的时候报警到管理员邮箱
  3. # apt-get install denyhosts        //安装denyhost软件,以实现防黑客扫描

查看并配置denyhosts

root@node2:~# cat /etc/denyhosts.conf  | grep -v “^$”| grep -v “^#”

  1.        ############ THESE SETTINGS ARE REQUIRED ############        //这些设定是必须的
  2. SECURE_LOG = /var/log/auth.log                        //指定sshd的日志文件,里面已经内置了一些日志文件的位置,只需要打开即可,打开的方法为删除#号。
  3. HOSTS_DENY = /etc/hosts.deny        //指定可以限制IP地址的文件,这里使用/etc/hosts.deny
  4. PURGE_DENY = 5m                             //过多长时间,把IP从/etc/hosts.deny里面清除
  5. BLOCK_SERVICE  = sshd                    //指定被保护的服务,这里要保护的是sshd
  6. DENY_THRESHOLD_INVALID = 1        //允许无效用户失败的次数,在/etc/passwd里面没有的用户(不包括root)
  7. DENY_THRESHOLD_VALID = 2            //允许正常用户失败的次数,在/etc/passwd里面有的用户(不包括root)
  8. DENY_THRESHOLD_ROOT = 1            //允许root用户失败的次数
  9. DENY_THRESHOLD_RESTRICTED = 1    //允许在$WORK_DIR/hosts-restricted里面出现的用户失败的次数
  10. WORK_DIR = /var/lib/denyhosts            //定义工作目录
  11. SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES    //如果为YES,所有在$WORK_DIR/allowed-host时面的IP地址将会被认为是可疑的,如果设置为NO,所有在allowd-hosts试图登陆的结果,将不会发送警告邮件!所有不在$WORK_DIR/allowed-host时面的IP地址将会发送警告!
  12. HOSTNAME_LOOKUP=YES        //是否将IP地址解析为主机名,告警的时候使用主机名。
  13. LOCK_FILE = /run/denyhosts.pid        //定义PID文件的位置,确保同时只有一个Denyhost进程在运行
  14.        ############ THESE SETTINGS ARE OPTIONAL ############        //这里的设置是可选的
  15. ADMIN_EMAIL = gm100861@gmail.com               //当有人试图登录你的服务器,或者有IP被加入黑名单的时候,发送邮件到这里指定的邮箱。前提是,本机一定要可以发送邮件才行!
  16. SMTP_HOST = localhost                //指定smtp服务器
  17. SMTP_PORT = 25                            //指定SMTP端口号
  18. SMTP_FROM = DenyHosts <nobody@localhost>        //指定发件人
  19. SMTP_SUBJECT = DenyHosts Report                        //指定邮件主题
  20. AGE_RESET_VALID=5d                    //多长时间后,用户登录失败的次数被置为0,这里是指在/etc/passwd里面定义的用户,如果不设置,永远都不会置0
  21. AGE_RESET_ROOT=25d            //多长时间后,root用户登录失败的次数置为0,如果不设置,永远都不会置0
  22. AGE_RESET_RESTRICTED=25d    //在$WORK_DIR/hosts-restricted时面定义的用户,多长时间失败次数计数器被置为0
  23. AGE_RESET_INVALID=10d            //无效用户(不在/etc/passwd里面的用户)的失败次数计数器,多长时间被置为0
  24. RESET_ON_SUCCESS = yes            //当某个IP使用某个用户登录成功后,该IP对应的用户失败次数将会被置为0
  25.   ######### THESE SETTINGS ARE SPECIFIC TO DAEMON MODE  ##########
  26. DAEMON_LOG = /var/log/denyhosts        //当denyhost运行在守护进程模式的时候,日志文件存储的位置
  27. DAEMON_SLEEP = 30s                    //轮询查看SSHD日志的间隔
  28. DAEMON_PURGE = 1h                //多长时间清空$HOSTS_DENY中的IP地址,如果PURGE_DENY为空,这个设置将无效
  29.    #########   THESE SETTINGS ARE SPECIFIC TO     ##########
  30.    #########       DAEMON SYNCHRONIZATION         ##########

恶意的登录一下,再查看/etc/hosts.deny文件

 

  1. root@node2:~# cat /etc/hosts.deny
  2. # /etc/hosts.deny: list of hosts that are _not_ allowed to access the system.
  3. #                  See the manual pages hosts_access(5) and hosts_options(5).
  4. #
  5. # Example:    ALL: some.host.name, .some.domain
  6. #             ALL EXCEPT in.fingerd: other.host.name, .other.domain
  7. #
  8. # If you’re going to protect the portmapper use the name “portmap” for the
  9. # daemon name. Remember that you can only use the keyword “ALL” and IP
  10. # addresses (NOT host or domain names) for the portmapper, as well as for
  11. # rpc.mountd (the NFS mount daemon). See portmap(8) and rpc.mountd(8)
  12. # for further information.
  13. #
  14. # The PARANOID wildcard matches any host whose name does not match its
  15. # address.
  16. #
  17. # You may wish to enable this to ensure any programs that don’t
  18. # validate looked up hostnames still leave understandable logs. In past
  19. # versions of Debian this has been the default.
  20. # ALL: PARANOID
  21. # DenyHosts: Mon Jul 16 16:46:46 2012 | sshd: 1.1.1.254
  22. sshd: 1.1.1.254

再查看一下管理员邮箱,收到报警邮件

上网被扫描是经常的事,为了避免 ssh 帐号和密码被暴力破解,Ubuntu下可以利用安装 denyhosts 来加强系统安全性。

1.安装
sudo apt-get install denyhosts

2.配置 /etc/denyhosts.conf 。内容参考:

sshd 登录日志文件。不同系统的不一样。
SECURE_LOG = /var/log/auth.log

限制主机访问的文件
HOSTS_DENY = /etc/hosts.deny
移除 HOSTS_DENY 中超过以下时间的旧条目
PURGE_DENY = 1w

阻止的服务。默认是 sshd ,可以设置为其他或全部。
BLOCK_SERVICE  = sshd

当该主机利用无效用户进行登录尝试失败超过以下的次数时,阻止该主机
DENY_THRESHOLD_INVALID = 3

针对有效用户的
DENY_THRESHOLD_VALID = 4

针对 root 用户的
DENY_THRESHOLD_ROOT = 1

针对有限制的用户的
DENY_THRESHOLD_RESTRICTED = 1

DenyHosts 用于写数据用的。在里面可以看到 hosts,hosts-root,offset,users-hosts,users-valid,hosts-restricted,hosts- valid,suspicious-logins,users-invalid 这些记录。
WORK_DIR = /var/lib/denyhosts

当为 YES 时,如果允许的主机在登录时被认为可疑,则对该主机进行记录。当为 NO 时,如果允许的主机在登录时被认为可疑也不对该主机进行记录。在允许的主机范围外的主机的可疑登录全部会被记录。
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES

反向域名解释
HOSTNAME_LOOKUP=NO

这个文件存在表示 Denyhosts 正在运行。用于保证每次只有一个实例在运行。
LOCK_FILE = /var/run/denyhosts.pid

管理员 EMail
ADMIN_EMAIL = root@localhost

SMTP 主机设置。如果有 SMTP 服务支持,可以给管理员发邮件。
SMTP_HOST = localhost
SMTP_PORT = 25
SMTP_FROM = DenyHosts <nobody@localhost>
SMTP_SUBJECT = DenyHosts Report

如果在指定的时间内没有失败的登录尝试,将导致此主机的失败计数重置为0。此值适用于除了 root 之外,所有有效用户(在 /etc/passwd 中的)的登录尝试。如果没有定义,这个计数将永远不会重置。
AGE_RESET_VALID=5d

针对 root 用户的
AGE_RESET_ROOT=25d

针对有限制的用户的
AGE_RESET_RESTRICTED=25d

针对无效用户(不在 /etc/passwd 中的)
AGE_RESET_INVALID=1w

当登录成功时,把登录成功的失败计数重置为0。默认是 NO。
#RESET_ON_SUCCESS = yes

当以后台方式运行时,Denyhosts 的日志文件,留空不记录日志。
#DAEMON_LOG = /var/log/denyhosts

当以后台方式运行时,每读一次日志文件的时间间隔。
DAEMON_SLEEP = 30s

当以后台方式运行时,清除机制在 HOSTS_DENY 中终止旧条目的时间间隔。
DAEMON_PURGE = 1h

3.重启 Denyhosts
sudo /etc/init.d/denyhosts restart

 Posted by at 下午 1:55
12月 182013
 

没事发发Ubuntu vsftp的配置问题,以下是我摸索出的Ubuntu vsftp问题。希望对大家有所帮助。Ubuntu vsftp的简述:VSFTP(Very Secure FTP Daemon,非常安全的FTP服务器)。顾名思义,VSFTPD设计的出发点就是安全性。同时随着版本的不断升级,VSFTPD在性能和稳定性上也取得了极大的进展。除了安全和性能方面很优秀的外,还有很好的易用性。Red Hat公司在自己的FTP服务器(ftp.redhat.com)上就使用了vsFTPd 。

部署VSFTP

本文以ubuntu9.10为例进行部署,其他Linux发行版本类似。

1。安装

$ sudo apt-get install vsftpd

2。 配置

需要配置文件/etc/vsftpd.conf 来进行设置参数以对FTP进行控制,包括访问权限,流量等进行控制。

执行sudo vi /etc/vsftpd.conf (或sudo gedit /etc/vsftpd.conf )可以看到配置文件中的默认参数,其中加#为注释。提参数意义如下所示:

1>常用参数意义,是具体情况配置

#anonymous_enable 是否允许匿名ftp,如否则选择NO,默认允许匿名访问,注意当允许是所有用户均视为匿名登录。

#local_enable 是否允许本地用户访问,是指VSFTP所在机器上的注册用户。

#local_umask=022 默认的umask码

#write_enable 是否允许本地用户修改和删除

#local_umask=022 FTP上传文件权限 ,默认是077

#anon_upload_enable=YES 是否允许匿名用户上传

#anon_mkdir_write_enable=YES 是否允许匿名用户的写和创建目录的权限

#dirmessage_enable=YES 当切换目录时,是否显示该目录下message隐藏文件的内容

#xferlog_enable=YES 是否激活上传和下载的日志

#connect_from_port_20=YES 是否启动FTP数据端口20的连接请求

#chown_uploads=YES 是否改变上传文件的所有者

#chown_username=whoever 改变上传文件的所有着为whoever

#xferlog_file=/var/log/vsftpd.log 上传/下载日志文件所默认的路径

#xferlog_std_format=YES 是否使用标准的ftpd xferlog日志格式

#idle_session_timeout=600 是否将在用户会话空闲10分钟后被中断

#data_connection_timeout=120 是否将在数据连接空闲2分钟后被中断

#nopriv_user=ftpsecure 是否运行vsftpd需要的非特殊系统用户默认nobody

#async_abor_enable=YES 是否是否允许运行特殊的FTP命令async

#ascii_upload_enable=YES 是否启用上传的ascii传输方式

#ascii_download_enable=YES 是否启用下载的ascii传输方式

#ftpd_banner=Welcome to blah FTP service. 用户连接服务器后显示信息

#deny_email_enable=YES 是否允许某些匿名用户使用邮件地址(默认的)

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list #指出被锁定在自家目录中的用户的列表文件。文件格式为一行一用户。

注意:当chroot_local_user=NO、chroot_list_enable=YES时,vsftpd.chroot_list中用户为锁定用户,即他们除了自己的目录,不可以访问其他目录。

当chroot_local_user=YES、chroot_list_enable=YES时,vsftpd.chroot_list中用户为非锁定用户,他们可以访问任何其他目录。

local_root=/var/www/web (路径自定义)#定义所有本地用户的根目录。当本地用户登入时,将被更换到此目录下。(注释则访问该用户自己目录)

write_enable=YES

max_clients=100 #FTP服务器最大承载用户

max_per_ip=5 #限制每个IP的进程

local_max_rate=256000 #最大传输速率(b/s)

hide_ids=YES #是否隐藏文件的所有者和组信息

idle_session_timeout= 3000  #空闲(发呆)用户会话的超时时间,若是超出这时间没有数据的传送或是指令的输入,则会强迫断线。单位为秒,默认值为300。

2>配置vsftpd.chroot_list

增加需要锁定/非锁定目录的用户(根据自己情况添加)

3>删除vsftp默认访问路径

$ sudo rmdir /home/ftp 根据local_root定义的目录,新建一个,以控制登陆用户进入此目录

4>重启vsftp服务

$ /etc/init.d/vsftpd restart

注意一点,在设置用户对文件的访问权限时,注意如果要是登陆用户有上传的权限,则不仅要进行上述配置文件参数的设置,同时还要保证用户对进入的目录有写的权利,一般可设为755,这就意味这可以通过对本地用户本身的权限和FTP所配置的权限结合进行有效的访问控制。

Ubuntu vsftp的配置问题讲述玩了,现在你就可以试试在Linux上部署一个FTP服务器了,如果还有不明之处可以参考介绍Linux的书籍,一般的linux都会介绍FTP的部署。

1.安装vsftpd
直接从源里面安装,easy
代码:sudo apt-get install vsftpd
安装完毕后或许会自动生成一个帐户”ftp”,/home下也会增加一个文件夹。
如果没有生成这个用户的话可以手动来,生成了就不用了:
代码:sudo useradd -m ftp
sudo passwd ftp
有”ftp”帐户后还要更改权限
代码:sudo chmod 777 /home/ftp
在这个目录下我建立一个文件夹专门保存需要共享的内容

2.配置文件
通过sudo gedit /etc/vsftpd.conf修改。
配置文件比较简单,如下
代码:#独立模式启动
listen=YES

#同时允许4客户端连入,每个IP最多5个进程
max_clients=200
max_per_ip=4

#不允许匿名用户访问,允许本地(系统)用户登录
anonymous_enable=NO
local_enable=YES
write_enable=NO

#是否采用端口20进行数据传输
connect_from_port_20=YES

#生成日志
xferlog_enable=YES

#指定登录转向目录
local_root=/home/ftp/ftp

这样,在同局域网的电脑上,用我的IP地址,用帐号”ftp”和对应密码就可以登录了,密码是第一步里面passwd那句指定的。

就这样就结束了,请大家拍砖!![/code]

———————————-
对了,更改配置后不要忘了重启ftp服务 :D
代码:sudo /etc/init.d/vsftpd restart
此外还有开启关闭服务的命令
代码:sudo /etc/init.d/vsftpd start
sudo /etc/init.d/vsftpd stop

 Posted by at 下午 1:16
12月 182013
 

关于ssh的登录,作为一个合格的linux运维人员大家都是熟悉不能在熟悉的了,我们都知道,计算机本身暴露在互联网上就是危险的,当然我们不要因为我们的业务少,用户量不多而有侥幸心理,掉以轻心;互联网的大多数攻击都是没有目的性的,黑客大神们通过大范围的IP端口扫描探测到可能存在的漏洞bug主机,然后通过自动扫描工具来进行破解,那么我们来怎么防止黑客的大神暴力破解,要么自己手动的写防止暴力破解的脚本+任务计划来实施,要么通过开源软件来完成,Denyhost正是这样的一款工具,Denyhosts是一个Linux系统下阻止暴力破解SSH密码的软件,它的原理与DDoS Deflate类似,可以自动拒绝过多次数尝试SSH登录的IP地址,防止互联网上某些机器常年破解密码的行为,也可以防止黑客对SSH密码进行破解;

DenyHosts阻止攻击原理
DenyHosts会自动分析 /var/log/secure 等安全日志文件,当发现异常的连接请求后,会自动将其IP加入到 /etc/hosts.deny 文件中,从而达到阻止此IP继续暴力破解的可能。同时,Denyhosts还能自动在一定时间后对已经屏蔽的IP地址进行解封,非常智能。
DenyHost安装部署:
1.  查看开发环境是否满足
rpm -qa | grep gcc
rpm -qa | python 为什么要看看python的原因是因为这个程序就是用python语言写的
2.  下载安装Denyhost,可以在官方网站下载源码http://denyhosts.sourceforge.net/
tar xf DenyHosts-2.6.tar.gz
cd DenyHosts-2.6
python setup.py install
3.  查看修改配置文件;
cd /usr/share/denyhosts/
cp denyhosts.cfg-dist denyhosts.cfg
cp daemon-control-dist daemon-control
vim denyhosts.cfg
sed -e '/^$/d' -e '/^#/d' denyhosts.cfg
SECURE_LOG = /var/log/secure  生成的安全日志
HOSTS_DENY = /etc/hosts.deny   拒绝的IP地址
PURGE_DENY = 1h             1小时自动解锁,可以根据自己的环境来定义
BLOCK_SERVICE  = sshd       需要拒绝的服务的名字
DENY_THRESHOLD_INVALID = 5  某一个无效的用户名输入多少次自动锁定阻止;
DENY_THRESHOLD_VALID = 10   一个有效的用户名尝试多少次登录后被阻止,
DENY_THRESHOLD_ROOT = 2 root尝试登录多少次阻止
DENY_THRESHOLD_RESTRICTED = 1
WORK_DIR = /usr/share/denyhosts/data    文件存放的路径
SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES
HOSTNAME_LOOKUP=YES 是否尝试解析源IP的域名
LOCK_FILE = /var/lock/subsys/denyhosts
       ############ THESE SETTINGS ARE OPTIONAL ############
ADMIN_EMAIL =       设置管理员的邮箱密码
SMTP_HOST = localhost•  这是SMTP指向的地址
SMTP_PORT = 25          SMTP的端口
SMTP_FROM = DenyHosts <nobody@localhost>
SMTP_SUBJECT = DenyHosts Report
AGE_RESET_VALID=5d
AGE_RESET_ROOT=25d
AGE_RESET_RESTRICTED=25d
AGE_RESET_INVALID=10d
   ######### THESE SETTINGS ARE SPECIFIC TO DAEMON MODE  ##########
DAEMON_LOG = /var/log/denyhosts
                          
DAEMON_SLEEP = 30s
DAEMON_PURGE = 1h
   #########   THESE SETTINGS ARE SPECIFIC TO     ##########
   #########       DAEMON SYNCHRONIZATION         ##########
 ./daemon-control start 配置完成之后重启就可以
4.  修改成开机启动就可以
ln -s /usr/share/denyhosts/daemon-control /etc/init.d/denyhost
chkconfig --add denyhost
chkconfig --level 35 denyhost on
cat /etc/hosts.deny
/etc/rc.d/init.d/denyhost restart
5.  测试
找一台测试机模拟测试;然后在/etc/hosts.deny中查看
 Posted by at 下午 1:15
12月 182013
 

1、加挂硬盘
sudo hdparm -I /dev/sdb       硬盘硬件安装后,此命令测试linux系统是否能找到挂载的未分区硬盘
2、创建分区

sda是第一块SCSI硬盘,sdb第二块,以此类推…物理分区使用a、b编号,每个物理硬盘最多有四个主逻辑分区(或扩展分区),所以自动分区中,扩展分区sda2下第一个逻辑分区编号从5开始

第一次执行sudo fdisk /dev/sdb,出现了Error: Unable to open /dev/sdb – unrecognised disk label.  提示找不到磁盘标签,可以使用 parted 进行分区(sudo parted  /dev/sdb )。

  1. Command (m for help):
  2. 这里按m获得帮助
  3. a   toggle a bootable flag   将分区设置为启动区
  4. b   edit bsd disklabel    编辑bsd的disklabel
  5. c   toggle the dos compatibility flag  设置该分区为dos分区
  6. d   delete a partition 删除分区
  7. l   list known partition types  列出已知的分区类型
  8. m   print this menu  打印帮助列表
  9. n   add a new partition 创建新分区
  10. o   create a new empty DOS partition table
  11. p   print the partition table查看分区信息
  12. q   quit without saving changes 退出不保存
  13. s   create a new empty Sun disklabel
  14. t   change a partition’s system id改变分区类型
  15. u   change display/entry units
  16. v   verify the partition table
  17. w   write table to disk and exit 保存退出
  18. x   extra functionality (experts only)
  19. Command (m for help):p  //查看新硬盘的分区
  20. ********************************************************************
  21. Disk /dev/sdb: 1000204 MB, 1000202273280 bytes
  22. 255 heads, 63 sectors/track, 121601 cylinders
  23. Units = cylinders of 16065 * 512 = 8225280 bytes
  24. Device Boot Start End Blocks Id System
  25. ********************************************************************
  26. Command (m for help):n  //创建新分区
  27. File system type  (default ext2): ext3    //输入想使用的分区格式
  28. Partition name:  backup                      //输入分区的名字
  29. First cylinder  (default 0cyl):                //第几个柱面,我们按照默认
  30. Last cylinder or +size or +sizeMB or +sizeKB  (default 0cyl):+1000000M    //这里我们按大小输入 即+1000000M (注意这个M为大写)
  31. Warning: You requested a partition from 0cyl to 121576cyl.
  32. The closest location we can manage is 1cyl to 121575cyl.  Is this still
  33. acceptable to you?
  34.    y   Yes
  35.    n   No
  36. 当然是y
  37. Command (m for help): p            //查看新硬盘分区后的情况
  38. ********************************************************************
  39. Disk /dev/sdb: 1000 GB, 1000202273280 bytes
  40. 255 heads, 63 sectors/track, 121601 cylinders
  41. Units = cylinders of 16065 * 512 = 8225280 bytes
  42.    Device Boot      Start         End      Blocks   Id  System
  43. /dev/sdb1               2      121576   976559157   83  Linux
  44. ******************************************************************
  45. Command (m for help): w

Information: Don’t forget to update /etc/fstab, if necessary.            //写入硬盘分区属性并结束 
3、格式化硬盘

  1. sudo mkfs -t ext3 /dev/sdb1               //把上面创建的新硬盘分区格式化为ext3格式,这个要等一会才能自动结束
  2. ********************************************************************************
  3. mke2fs 1.40.8 (13-Mar-2008)
  4. Filesystem label=
  5. OS type: Linux
  6. Block size=4096 (log=2)
  7. Fragment size=4096 (log=2)
  8. 61038592 inodes, 244137796 blocks
  9. 12206889 blocks (5.00%) reserved for the super user
  10. First data block=0
  11. Maximum filesystem blocks=0
  12. 7451 block groups
  13. 32768 blocks per group, 32768 fragments per group
  14. 8192 inodes per group
  15. Superblock backups stored on blocks:
  16.     327689830416384022937629491281920088473616056322654208,
  17.     409600079626241123942420480000238878727166361678675968,
  18.     102400000214990848
  19. Writing inode tables: done
  20. Creating journal (32768 blocks): done
  21. Writing superblocks and filesystem accounting information: done
  22. This filesystem will be automatically checked every 37 mounts or
  23. 180 days, whichever comes first.  Use tune2fs -c or -i to override.
  24. ********************************************************************************

4、设置sdb1的卷标

sudo e2label /dev/sdb1 /backup                  //这里/backup 就是在/dev/sdb1根下起了个名字

5、设置挂载点

sudo mkdir /backup                   //在根路径下创建挂载点
6、设置开机自动挂载
sudo vim /etc/fstab

<file system> <mount point>   <type>  <options>       <dump>      <pass>

1                         2                      3              4                   5                6
1 指代文件系统的设备名。最初,该字段只包含待挂载分区的设备名(如/dev/sda1)。现在,除设备名外,还可以包含LABEL或UUID
2 文件系统挂载点。文件系统包含挂载点下整个目录树结构里的所有数据,除非其中某个目录又挂载了另一个文件系统
3 文件系统类型。下面是多数常见文件系统类型(ext3,tmpfs,devpts,sysfs,proc,swap,vfat)
4 mount命令选项。mount选项包括noauto(启动时不挂载该文件系统)和ro(只读方式挂载文件系统)等。在该字段里添加用户或属主选项,即可允许该用户挂载文件系统。多个选项之间必须用逗号隔开。其他选项的相关信息可参看mount命令手册页(-o选项处)
5转储文件系统?该字段只在用dump备份时才有意义。数字1表示该文件系统需要转储,0表示不需要转储
6文件系统检查?该字段里的数字表示文件系统是否需要用fsck检查。0表示不必检查该文件系统,数字1示意该文件系统需要先行检查(用于根文件系统)。数字2则表示完成根文件系统检查后,再检查该文件系统

文件中增加如下配置信息
LABEL=/backup   /backup      ext3        defaults        1       2

挂载分区的卷标名称    挂载点  挂载分区文件类型  挂载方式         略         略

或者

/dev/sdb1     /backup      ext3      defaults      1      2

7、重启机器查看结果

  1. df -h //查看分区空间使用情况,就可以看到/backup已经自动挂载
  2. Filesystem            Size  Used Avail Use% Mounted on
  3. /dev/sda1             139G  121G   12G  92% /
  4. varrun                1.3G   68K  1.3G   1% /var/run
  5. varlock               1.3G     0  1.3G   0% /var/lock
  6. udev                  1.3G   32K  1.3G   1% /dev
  7. devshm                1.3G     0  1.3G   0% /dev/shm
  8. /dev/sdb1             924G   11G  867G   2% /backup

 

 Posted by at 下午 12:31
12月 182013
 

设置背景颜色

Options => Sessions options => Terminal => Emulation,
在 Terminal下拉列表下选择Linux,勾选 ANSI Color

默认的 ANSI Color 的背景颜色是黑色,感觉看久了很不舒服,可以修改背景颜色。
options -> global options ->Terminal ->Apperance -> ANSI Color, Default, 点击黑色的那项, 修改为下面的颜色比较舒服,
颜色是:H, S, L = 128,240,25

设置字体颜色(最后一个)
白色字体看上去也不舒服,同样可以修改:
124,20,132/131/148/150

上传文件

使用Zmodem从客户端上传文件到linux服务器
1)先用SecureCRT登陆Linux终端的目录下,该目录是你存放上传文件的目录
2)在Linux下选中你要放置上传文件的路径,并在此目录下然后输入rz命令,SecureCRT会弹出文件选择对话框,在查找范围中找到你要上传的文件,按Add按钮;然后OK,就可以把文件上传到linux上了。

3)或者在Transfer->Zmodem Upoad list弹出文件选择对话框,选好文件后按Add按钮;然后OK,窗口自动关闭;最后在linux下选中存放文件的目录,输入rz命令;Liunx就把那个文件上传到这个目录下了。

 

下载文件

使用Zmodem下载文件到客户端:
sz filename
zmodem接收可以自行启动,下载的文件存放在你设定的默认下载目录下(上图 Directories设置上传和下载的目录 设置的目录)

rz,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具,

Windows端只要支持ZModem的telnet/ssh客户端,SecureCRT就可以用SecureCRT登陆到Unix/Linux主机(telnet或ssh均可)

1) 上传:运行命令rz,是接收文件,SecureCRT就会弹出文件选择对话框,选好文件之后关闭对话框,文件就会上传到当前目录

2) 下载:运行命令sz file1 file2就是发文件到windows上(保存的目录是可以配置) 比ftp命令方便多了,而且服务器不用再开FTP服务了

注: 如果rz、sz命令无效,所以请大家先安装 rzsz-0.12.20-853.2.i586.rpm

 Posted by at 上午 11:23
12月 182013
 

更改密码步骤:

1、打开终端,输入命令:
sudo passwd 用户名

2、输入原来的密码,然后就会提示输入新的密码,回车;再次输入新的密码。

3、新的密码就已经生效了,关闭终端即可。

解决xset: unable to open display “”问题

ssh连接ubuntu后,想通过命令关闭远端的显示器,使用xset dpms force off

我通常会在.bashrc文件alias下

如:alias soff=’xset dpms force off’

但是重装了ubuntu后,在remote端使用soff命令无法关闭显示,提示错误:

xset:  unable to open display “”

在网上查了些资料发现一个环境变量DISPLAY没有设置,如下:

export DISPLAY=:0.0

把这个配置加入到.bashrc中,重启bash(source .bashrc)就能解决这个问题

sleep 1 && xset dpms force off

 Posted by at 上午 3:34
12月 182013
 

第一种适用于为单一用户设置PATH。
第二种是为全局设置 PATH。
第三种方法适合于暂时修改,重新登录后失效

第一种方法:
每个用户的目录都有自己的配置脚本文件.bashrc
root :/root/.bashrc
jernymy :/home/jernymy/.bashrc
可以在此文件中加入 PATH 的设置如下:
export PATH=$PATH:/your path1/:/your path2/
注意:每一个 path 之间要用 “:“ 分隔。
注销重启 X 就可以了,或者执行source .bashrc

第二种方法:
在 /etc/profile中增加,增加后为所有用户的path均被修改,全局的。
export PATH=$PATH:/your path1/

第三种方法:
直接在终端下输入
export PATH=$PATH:/your path1/
命令执行后立即生效,但是重启系统后,设置的路经消失。

注意:记住第一第二种方法要重启,或者执行source .bashrc,第3种不用,但是第3重启后失效。

Ubuntu Linux系统包含两类环境变量:系统环境变量和用户环境变量。系统环境变量对所有系统用户都有效,用户环境变量仅仅对当前的用户有效。

修改用户环境变量

用户环境变量通常被存储在下面的文件中:

  • ~/.profile
  • ~/.bash_profile 或者 ~./bash_login
  • ~/.bashrc

上述文件在Ubuntu 10.0以前版本不推荐使用。

系统环境变量

系统环境变量一般保存在下面的文件中:

  • /etc/environment
  • /etc/profile
  • /etc/bash.bashrc

/etc/profile和 /etc/bash.bashrc在Ubuntu 10.0版本中不推荐使用。

加入环境变量

如想将一个路径加入到$PATH中,可以像下面这样做(修改/etc/profile):

 Posted by at 上午 2:41