Debian VPS 设置中文显示
244 views 八月 14, 11 by Timothy最近看到YuchBerry出了新版,于是又打算把我的BB9000拿来折腾一下。不过第一步呢,就是需要在VPS上搭建YuchBerry的服务端,由于推送和发送的邮件中会用到中文,所以需要先给VPS设置中文环境,避免出现乱码。本教程将记录一下如何在Linux VPS中设置中文字体和显示中文,VPS的系统为Debian。 Read More
最近看到YuchBerry出了新版,于是又打算把我的BB9000拿来折腾一下。不过第一步呢,就是需要在VPS上搭建YuchBerry的服务端,由于推送和发送的邮件中会用到中文,所以需要先给VPS设置中文环境,避免出现乱码。本教程将记录一下如何在Linux VPS中设置中文字体和显示中文,VPS的系统为Debian。 Read More
VPS其实和一般的独立Linux服务器,在使用上基本没有区别,因为现在的虚拟化技术以及很成熟了,不过VPS和独服还是有一个很大的差异,那就是系统资源和性能上。通常,VPS都是由一个独立服务器划分出来的,所以在资源和性能优势上,远比不上独服。
就拿前段时间本VPS受到的DDOS攻击来说,其实DDOS也是利用大量发起的请求,导致被攻击VPS(或服务器)内存资源被耗尽,系统负载过高,而导致80端口的Http服务无响应,从而达到最终的攻击目的。DDOS虽然防不胜防,不过总还是有一些办法,能把DDOS的影响减小的。比如定时监控系统状态,然后自动重启Web服务,这也是本文要介绍的一种方法。 Read More
不知道拥有多个VPS的童鞋,平时是怎样来管理VPS的?在Windows下,我一般用SecureCRT来对VPS进行管理,原因是SecureCRT提供Tab标签管理的方式,多个VPS可以同时进行连接,并通过标签页进行快速切换,非常方便。至于在Linux下,我就只好老老实实的开个Console来连接VPS了。不过,今天发现一个很不错的开源软件,试用了一下,果然是Linux下管理多个VPS的利器,而且还有很多功能非常实用。
Pac Manager的官方地址,在SourceForge上:http://sourceforge.net/projects/pacmanager/
Linux下,可以直接下载发布的deb安装包进行安装。安装Pac Manager,还需要依赖另外一个安装包:libgnome2-vte-perl_0.09-1_i386.deb (64位系统,需要安装这个 libgnome2-vte-perl_0.09-1_amd64.deb),需要先安装依赖的安装包,再安装Pac Manager,否则会提示错误,找不到依赖的安装包,无法进行安装。
安装好后,就可以在主菜单的Internet子菜单中,找到Pac了。点击,即可启动。 Read More
Linux中提供方便的让我们生成随机密码的功能,并且生成的密码有一定的复杂度,符合密码规范。下面是Linux中生成随机密码的两种常用的方式:
使用mkpasswd命令,需要事先安装expect模块,以CentOS为例:
1 | yum -y install expect |
安装好后,直接运行mkpasswd,就能生成随机密码了。并且命令还有参数,比如设置生成的随机密码的最小长度,等等,看看help就知道了。
和mkpasswd大致一致,需事先安装passwdgen模块:
1 | yum -y install passwdgen |
安装好后,直接运行passwdgen,即可得到随机密码,同样passwdgen命令也有参数,可以参考help。
从Ubuntu的官网发布开始倒计时的时候,我就掰着手指,等着新版Ubuntu的最终发布。在临近发布的时候,还有爆料说Ubuntu发现重大bug,导致安装后引导程序会出现问题,不过这个BUG在最终发布的时候还是修复了。正式发布的第二天,俺就迫不及待的从官网拖了一个Ubuntu 10.04 64bit的Desktop版本,准备装在笔记本上,原因是笔记本是4G内存(嘿嘿……)。 继续按照老的套路,从U盘安装Ubuntu,这样可以不用刻光盘,避免浪费,且安装速度快,绿色,环保。整个安装过程很简洁,而且不到10分钟,就搞定了,这速度,比起安装Windows,实在有点出乎意料。而且比起自家大哥Ubuntu 9系列还要快,因为Ubuntu 9在安装时还要在线下载一些东西,会耽误一定的时间。
安装完毕,第一次进入Ubuntu 10,给人比较耳目一新的感觉,特比是菜单栏上多出的一个聊天帐号设置,包括众多兼容的实时聊天软件,这也是Ubuntu 10主打的一特色:加强的社区交互功能。另外值得一提的是Ubuntu One,Ubuntu的云集算服务功能,相当不错。目前Ubuntu对硬件的识别更加友好了,在ThinkPad的机器上,根本不用安装任何驱动,Ubuntu已经能自动识别包括:声卡/无线网卡/以太网卡/声音调整按钮/蓝牙/亮度调节 等等驱动,非常人性化。而且发现Ubuntu本身已经自带了非常流行的iBus输入法,只需要再在机器的语言支持中,装上中文和一些其他附带的东东,就可以方便的用iBus输入中文了,这又算是个亮点。
作为一款粉丝众多的Linux发行版本,Ubuntu在用户易用性和UI上花了不少的功夫,并且自带的一系列软件,足以满足用户一般的上网/图片处理/文字处理等需求,看来国内用户要逐步脱离Win的束缚,迁移到Linux的日子不远了……
本文纯属自己使用Ubuntu Linux的一些流水帐和感受,欢迎各位同学交流。
PS:本文发自 Ubuntu 10.04 LTS 64bit Desktop Edition ,小小纪念一下。
这两天加班,没时间顾及VPS。晚上没事用SecureCRT,通过SSH连接VPS,发现VPS拒绝连接。奇怪了,VPS的站点能访问,iptables也没限制SSH端口,除非是sshd服务挂了。登陆VPS的web管理界面一看,果然sshd这进程从列表中消失了。直接运行/etc/init.d/ssh start,系统返回异常:ssh 无法启动, /dev/null is not a character device 这错误提示看得我一头雾水,难道sshd服务,还跟那个/dev/null设备有关系?带着疑问去请教了下google老师,原来别人也有遇到这样的问题。sshd确实和这设备有关,如果/dev/null被损坏,ssh启动,就会有如此提示。既然问题找到了,是/dev/null损坏,我们需要重建一个,用下面的命令即可修复:
1 2 3 | rm /dev/null mknod /dev/null c 1 3 chmod 666 /dev/null |
待/dev/null重建好后,直接在VPS的web管理页面中,运行 /etc/init.d/ssh start,久违的sshd服务就回来了。回忆了下,前两天打开了corn服务,有个每天定时执行的和日志关的脚本,会去修改/dev/null,立马屏蔽之,重启cron服务后,一切正常。
忙乎了一两天,俺的VPS算是上线了,基于Ubuntu Linux的,512MB内存,20G硬盘,1TB月流量,赠送2个IP,还不错。不过,现在还没有把博客迁移过去的打算,此VPS仅作为练手而用,只是建了一些ssh账号,供自己和同事跨栏用,还简单的搭建了基于Nginx+MySql+PHP+FastCGI的WordPress环境,并成功拉过来俺的一位同事在上面安了个blog,嘿嘿。
提到VPS,最重要的还是安全,毕竟你的系统是直接面向公网,如果不加强防范,很容易成为别人手里的肉鸡。Linux中的iptables,用过的同学都知道,是一个基于Linux内核的防火墙,功能比较强大,下面是iptable的一些常用的规则设置:
1 2 3 4 5 6 7 8 9 10 11 12 | /sbin/iptables -P INPUT DROP #禁止掉服务器所有入口请求,后面的规则只允许部分常用的服务端口 /sbin/iptables -P OUTPUT ACCEPT #允许服务器访问出口请求 /sbin/iptables -A INPUT -i lo -j ACCEPT #允许本地接口访问 /sbin/iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j DROP #禁止ping,因为ping是基于icmp协议的 /sbin/iptables -A INPUT -p tcp -m tcp --dport 20 -j ACCEPT #允许部分常用端口入口请求访问 /sbin/iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p udp -m udp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT /sbin/iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT #允许所有已经连接端口请求 /sbin/iptables -A INPUT -p all -m state --state INVALID,NEW -j DROP #DROP掉所有失效或者新的请求 |
可以把上述脚本保存起来,执行,然后用命令/sbin/iptables -L -n查看规则是否生效
把上述脚本再完善一下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:~/bin export PATH case "$1" in start) echo -n "Staring to write your Iptbales:..." /sbin/iptables -P INPUT DROP /sbin/iptables -P OUTPUT ACCEPT /sbin/iptables -A INPUT -i lo -j ACCEPT /sbin/iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j DROP /sbin/iptables -A INPUT -p tcp -m tcp --dport 20 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p udp -m udp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT /sbin/iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT /sbin/iptables -A INPUT -p all -m state --state INVALID,NEW -j DROP echo "Ok" ;; stop) echo -n "Cleaning your Iptables:..." /sbin/iptables -F /sbin/iptables -X /sbin/iptables -Z /sbin/iptables -P INPUT ACCEPT /sbin/iptables -P OUTPUT ACCEPT echo "Ok" ;; restart) echo -n "Cleaning your Iptables:..." /sbin/iptables -F /sbin/iptables -X /sbin/iptables -Z echo "Ok" echo -n "Staring to write your Iptbales:..." /sbin/iptables -P INPUT DROP /sbin/iptables -P OUTPUT ACCEPT /sbin/iptables -A INPUT -i lo -j ACCEPT /sbin/iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j DROP /sbin/iptables -A INPUT -p tcp -m tcp --dport 20 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p udp -m udp --dport 53 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT /sbin/iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT /sbin/iptables -A INPUT -p all -m state --state INVALID,NEW -j DROP echo "Ok" ;; *) echo "Usage: $0 {start|stop|restart}" esac exit 0 |
这样,我们就可以用start/stop/restart的参数来启用、禁止iptables防护了,很方便。另外,可以把此脚本放入/etc/init.d,让它像系统服务一样,在VPS启动的时候自动运行。
PS:
1.此脚本参考自网上,并作了部分修改
2.搜狗云输入法,也有郁闷的时候,在写文章的时候,候选词半天不出来,很卡,囧rz 是我打字速度太快,还是网速很慢?……
这段时间对Linux相当痴迷,玩了下CentOS,现在又看上了Ubuntu。对Ubuntu偶早有所闻了,以前也在虚拟机上装过,那漂亮的UI是各个Linux版本中相当出众的,安装、维护的简单和方便,也是至今都Ubuntu拥有众多追随者的原因。正好,俺家中有一台老牛机(以前大学时候用的台式机),这机器历史算长久了,从大二一直跟随俺到现在,有7、8年历史了。毕业后把这台机器略升级了一下,到现在都一直闲置在书房中,完全成了摆设。自从用上了笔记本,老婆也用上了上网本,这台台式机更是没人用了。昨天突然心血来潮,决定在老牛机上装个Ubuntu玩玩,没事了还可以开着下下高清BT,充分利用下闲置资源。
老牛机配置如下:
CPU: Athlon 1700+
内存: KingSton 1.5GB(1G*1+256*2)
硬盘: 希捷80G IDE接口
显卡: Geforce 6200
主板: nForce2
说干就干,首先在Ubuntu的老家拖了个最新的Ubuntu 9.10 32bit Desktop Edition的ISO。老牛机的光驱,经久失修,已经是个残废了。本来想扔掉的,但机箱面板那个挡板也被我搞掉了,扔掉光驱就有个缺口,不美观,只有留下了。主板支持4个USB接口,两个坏掉了,剩下两个还可用,刚好偶又有个2G的U盘(捡来的),所以打算通过U盘来安装系统。用U盘装系统好处多多,不用刻盘,并且速度比光驱快,嘿嘿。
用Ultra ISO利器,把安装镜像写入到U盘:
拔下U盘,插上老牛机器,一步一步安装,Ubuntu从此跑在了老牛机上,发现比以前的XP快不少。并且Ubuntu支持大部分硬件,无须驱动,显卡驱动可以用Ubuntu默认的,也可以自己单独安装。安装界面也相当的友好,即使是第一次使用的用户,也能根据向导来完成安装。
1.5G的内存,运行Linux当然会快很多,从开机和系统加载的速度就可以感受到,比以前的XP快不少。装上显卡驱动后,能打开一些可视化特效,比较炫。
由于Ubuntu自带Firefox浏览器,于是立马装上了AutoProxy插件,再用Linux自带的ssh命令,加上一个国外的SSH帐号,立马实现了跨栏的效果……为了以后方便,做了个简单的shell脚本:
1 2 | echo "ssh -N -D 127.0.0.1:7070 ssh-account@server-address" > connect.sh chmod +x connect.sh |
-N: 不需要shell登陆
-D: 建立本地端口映射,这里使用的7070端口,把这端口配置到AutoProxy里面去,就OK了
后面是ssh-username@server-ip
控制台运行此脚本后,会提示输入ssh密码,输入后,连接完毕,可以打开Firefox畅游了
关于BT下载工具,偶用Transmission,貌似Ubuntu已经自带了,没有的也可以单独安装。
关于中文输入法,偶一般是在浏览网页时输入中文,Firefox可以装一个搜狗的云输入插件,方便、绿色、环保,强烈推荐下。
老牛机器装上Linux感觉挺赞,如同重新焕发了活力一般。家有闲置老牛机的同学不妨试一试。