ssh客户端连接centos乱码问题

centos5.2配置完成后,正常能显示中文,查看后发现支持utf-8字符集。
而putty和ssh secure shell连接却发现乱码,主要表现为执行vim乱码,su命令乱码。
使用$ locale命令查看,出现如下:
  LANG=zh_CN.UTF-8
  LANGUAGE=zh_CN:zh
  LC_CTYPE=”zh_CN.UTF-8″
  LC_NUMERIC=”zh_CN.UTF-8″
  LC_TIME=”zh_CN.UTF-8″
  LC_COLLATE=”zh_CN.UTF-8″
  LC_MONETARY=”zh_CN.UTF-8″
  LC_MESSAGES=”zh_CN.UTF-8″
  LC_PAPER=”zh_CN.UTF-8″
  LC_NAME=”zh_CN.UTF-8″
  LC_ADDRESS=”zh_CN.UTF-8″
  LC_TELEPHONE=”zh_CN.UTF-8″
  LC_MEASUREMENT=”zh_CN.UTF-8″
  LC_IDENTIFICATION=”zh_CN.UTF-8″
  LC_ALL=

解决方案:
   1. 对于putty0.6版本
     a.修改centos上/ect/sysconfig/i18n内容为:
       LANG=”zh_CN.UTF-8″
     b.修改putty的configuration窗口内windows->Appearance->font setting为新宋体,10号字。
       修改Translation的Receive data assumed to be in which character set为:
        UTF-8。(因为下来列表中没有中文字符集,GB2312或cp936)。
     这样修改完成后,putty就正常支持中文显示了。

   2.对于ssh secure shell版本。
     a.将配置的字体改成宋体,但是还是乱码,
     b.修改centos的/ect/sysconfig/i18n内容为:
       LANG=”zh_CN.GB18030″

       LANGUAGE=”zh_CN.GB18030:zh_CN.GB2312:zh_CN”

       SUPPORTED=”zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en”

       SYSFONT=”latarcyrheb-sun16″
       —以上内容是网上找到了,照着写了。
       发现连接ssh secure shell可以正常显示中文。
       用$ locale查看,上面看到的配置都变成了GB18030编码了
  
       ** 但是又用putty连接,却又变成了乱码,我理解因为putty仍然用的是utf8编码,
          而配置ssh secure shell时,将centos改成gb18030编码了,所以乱码。
     c.到服务器上,重新启动了centos,发现显示中文也正常。

   3. 如果发现ssh secure shell有问题,或相关的引起问题,则重新配置putty使用,
      配置方案可以参考上述配置。

结论:
    因为ssh secure shell窗口符合window显示,所以暂时定为使用ssh secure shell客户端。
    而其也绑定了ftp上传功能,相对方便。
   

    变化:考虑建立mysql等多处使用utf-8编码,所有仍然使用putty客户端,系统编码改成utf-8

centos安装免费控制面板kloxo

很早就要说把平台转移到linux下了的,不过一直没有行动起来。前些天搞了一个美国的vps测试了一下,发现感觉还是不错的,通过在几个交流论坛里摸索,总算把免费的kloxo整到资源原本就不是很足的vps里。

这两天破天荒地做了另外一件事情:把托管在上海华数漕宝路机房达2年之久的差不多有200G资料的服务器给全部格式化了,然后换成了centos。很郁闷的是竟然那边的技术说没有centos的最新版,给我装了一个5.2的版本,最终还害得我出错了好几次、重装了两次系统。

考虑到在众多linux发行版中,centos是比较优秀的一个,因为它是基于原来的Redhat Linux,是相对于RHEL(Red Hat Enterprise Linux,现已收费)的免费版本,性能优良,可用文档等资源也很丰富。而在众多的面板中,从资源占用、易用性等方面综合考虑,kloxo(原lxadmin)无疑最比较适合vps新手的,而且它的基本功能是免费的,比起价格昂贵的cpanel面板来说还是相当不错的,唯一的商业限制是不能绑定超过40个域名,其实这对我们一般用户来说完全够用。因此centos+kloxo平台是我们这种不懂linux系统的人搭建web服务非常不错的选择。

下面分几步来说明拿到新安装的服务器/vps后初始化设置的步骤,仅作简单记述以备忘。下面的方法主要来自网上收集。

——————————- 第一步 ——————————-

因为拿到的服务器一般是安装了centos完全版的,自带有apache等组件,我们要使用kloxo自带的服务器组件,就需要先卸载自带的apache、mysql等。

卸载Mysql
# rpm -qa | grep mysql
mysql-3.23.58-9
php-mysql-4.3.4-11
mod_auth_mysql-20030510-4.1
mysql-server-3.23.58-9
说明:rpm -qa | grep mysql 命令是为了把mysql相关的包都列出来,卸载从最下面的一个包开始,直到卸载掉第一个为止。
比如:在这个例子中,我们应该先卸载mysql-server-3.23.58-9 方法如下:
rpm -e mysql-server
说明:rpm -e 是卸载rpm包的命令,后面是包名称,最后的版本号是不用打的,比如我们下一步卸载mod_auth_mysql-20030510-4.1包,方法如下:
rpm -e mod_auth_mysql

卸载Apache
# rpm -qa | grep httpd

卸载PHP
# rpm -qa | grep php

注意:卸载的时候如果卸载不掉,系统一般会提示包的依赖关系,并且列出依赖的包的名称,先卸载提示依赖的包就可以了。如果实在实在有卸载不掉的包,可以加-nodeps这个参数来卸载,比如我们卸载php-4.3.4-11,实在卸不掉了。就用:
rpm -e php-4.3.4-11 -nodeps
命令很强硬,应该行的。

——————————- 第二步 ——————————-

centos系统安全设置

1、更改SSH端口,最好改为10000以上,别人扫描到端口的机率也会下降
vi /etc/ssh/ssh_config
vi /etc/ssh/sshd_config
然后修改为port为需要的端口号
以root身份service sshd restart

2、删除系统臃肿多余的账号
userdel adm
userdel lp
userdel sync
userdel shutdown
userdel halt
userdel news
userdel uucp
userdel operator
userdel games
userdel gopher
userdel ftp 如果你不允许匿名FTP,就删掉这个用户帐号
groupdel adm
groupdel lp
groupdel news
groupdel uucp
groupdel games
groupdel dip
groupdel pppusers

3、增加普通账号,并禁止root远程登录
useradd newuser  //添加新用户
passwd newuser  //修改密码
usermod -G10 newuser
或usermod -G wheel newuser    //将用户加入wheel组,允许使用 su – 命令提权成root
vi /etc/ssh/sshd_config
添加一行:
PermitRootLogin no  //禁止root远程登录
vi /etc/pam.d/su
#auth required /lib/security/$ISA/pam_wheel.so use_uid   ← 找到此行,去掉行首的“#”
echo “SU_WHEEL_ONLY yes” >> /etc/login.defs  //以上为禁止不在wheel组的用户使用su -命令
重启sshd服务
#service sshd restart

4、更改下列文件权限,使任何人没有更改账户权限:
chattr +i /etc/passwd
chattr +i /etc/shadow
chattr +i /etc/group
chattr +i /etc/gshadow

5、编辑“host.conf”文件(vi /etc/host.conf)加入下面这些行:
order bind,hosts
multi on
nospoof on
chmod 600 /etc/xinetd.conf
vi /etc/xinetd.conf  禁止所有不需要的服务,如:ftp、telnet、shell、login、exec、talk、ntalk、imap、pop-2、pop-3、finger、auth等等,也可以直接通过setup命令来设置服务项。
改变了“inetd.conf”文件之后,别忘了给inetd进程发一个SIGHUP信号:
killall -HUP xinetd
chattr +i /etc/xinetd.conf  //把inetd.conf设成不可改变,如果要改变xinetd.conf文件,你必须先清除这个不允许改变的标志:
chattr -i /etc/inetd.conf

又是为了服务器安全,可以配置防ping

先用/sbin/ifconfig查看网卡信息,找到外网网卡名字,如venet0
运行
/sbin/iptables -A OUTPUT -o venet0 -p icmp -j ACCEPT
/sbin/iptables -A INPUT -i venet0 -p icmp –icmp-type echo-reply -j ACCEPT
/sbin/iptables -A INPUT -i venet0 -p icmp –icmp-type echo-request -j DROP
/sbin/service iptables save
看到OK后重启即可。

也可以通过使用MySQLTuner分析优化MySQL。MySQLTuner是一个Perl脚本,用来分析你的MySQL性能,并给出优化建议。

下载,执行:
# wget http://mysqltuner.com/mysqltuner.pl
# chmod +x mysqltuner.pl
# ./mysqltuner.pl

——————————- 第三步 ——————————-

安装kloxo
wget http://download.lxlabs.com/download/kloxo/production/kloxo-install-master.sh
sh ./kloxo-install-master.sh

yum install php-bcmath /*高精度数学运算组件,默认没安装,MD5运算时用到*/
yum check-update /*检查全部更新*/
yum update /*更新全部更新*/
yum clean all /*清理全部缓存的安装文件以节省空间*/

这就安装完了kloxo,可以web登陆面板了。
地址:https://yourdomain:7777/ /*安全连接*/
http://yourdomain:7778/ /*普通链接,常用*/
一般出于安全考虑要在面板里修改掉默认的7777和7778端口,修改后要ssh里运行:
/script/restart
重启kloxo服务使之生效。

下面就可以按照面板里的说明添加网站了。