打赏

如何正确且高效实现OSSIM中文化的解决方案(图文详解)

 

 

 

 

       前言

     对于玩OSSIM的初学者或者中级水平的从业人员来说,都有一定必要性从中文看起,当然,最终还是英文的目标迈进,只是说,为了让自己更快速上手!

     虽然系统说明支持中文,实际上,只是台湾的繁体中文而已。为此,对于我们大陆从小使用简单体的中文而言,就很有必要性了。

 

     网上有些博文说修改为UTF-8,有些博文说修改为gb2312 等。这里我给大家纠正下,无需这么做,保持为UTF-8即可。 (这是规范专业化)

             当然,你也可以去修改为gb2312也行得通,但是不建议。

 

 

 

 

 下载请到

http://download.csdn.net/download/u010106732/10139060

 

 

 

 

 

 

 

 

 

 以下为OSSIM web界面的菜单汉化步骤:

 

 

 

 

第一步:为系统安装 gettext
  首先是进入OSSIM的管理后台,用SSH登录后,进入 系统AlienVault Setup菜单,选择Jailbreak this Appliance即可 使用Root权限进入后台 , 运行 apt-get update , 运行 apt-get install gettext 上述命令如成功运行,进入第2步修改本地化。
  假如发生错误,尝试运行alienvault-update更新系统后再 重新运行上述命令安装gettext 系统更新命令:alienvault-update --verbose --feed

 

ossim410:~#  apt-get install gettext 
Running /usr/bin/apt-get install gettext
Reading package lists... Done
Building dependency tree       
Reading state information... Done
gettext is already the newest version.
gettext set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 136 not upgraded.

 

 

 

 

 

 

 

 第二步:修改本地化 

  运行命令:dpkg-reconfigure locales , 弹出下面菜单 

ossim410:~# dpkg-reconfigure locales 

 

 

 

 

 

   按键盘PageUp 或 Pagedown 来上下翻页,寻找到 en_US 及 zh_ 开头的 local,使用 space 空格键来选中相应的 locale,如下图我分别选中了 en_US 开头的几个locale及 zh_ 开头的几个locale

        改为    

 

 

 

      改为    

 

 

 

    按tab键,选中ok,Enter回车 

 

 

 

 

 

 

     然后,设置系统默认本地化:en_US.UTF-8或zh_CN.UTF-8

    我这里选择 en_US.UTF-8, tab后选中ok,Enter回车 

    至此,系统会生成相应支持的locale。

 

 

  得到

ossim410:~# dpkg-reconfigure locales 
locales-all installed, skipping locales generation
*** update-locale: Warning: LANGUAGE ("en_HK:en") is not compatible with LANG (zh_CN.UTF-8). Disabling it.
You have new mail in /var/mail/root
ossim410:~# 

  出现这个,别怕,忽略它既可。

 

 

 

 

 

第三步:添加VIM对于UTF-8的支持

vi /etc/vim/vimrc

行尾添加

set encoding=utf8

set fileencodings=ucs-bom,gbk,gb2312,gb18030,utf-8,latin1

     同时指定自己的远程登录时字体编码为UTF-8 。

 

 

 

 

 

 

第四步:替换原有ossim.po文件,以支持系统简体中文,即上传 ossim.po 文件至 OSSIM Server 

   因为,玩过OSSIM的朋友知道,刚入门也许对于新手的你来说,只是在自己电脑装个虚拟机跑个单机的OSSIM,但是,对于企业级来说,都是玩分布式的OSSIM,所以就有OSSIM Server的说法了。

 

       下载请到

http://download.csdn.net/download/u010106732/10139060

 

 

 

 

 

 

 

 

 

 

 

 

 

  备份原来的po文件

   mv   ossim.po    ossim_back.po

 

备份原来的mo文件 

  mv   ossim.mo    ossim_back.mo

 

 

 

 

   将制作好的ossim.po文件放回到/usr/share/locale/zh_CN/LC_MESSAGES/目录(之前做好备份)

ossim410:~# cd /usr/share/locale/zh_CN/LC_MESSAGES/
ossim410:/usr/share/locale/zh_CN/LC_MESSAGES# ls
Linux-PAM.mo  bfd.mo        debconf.mo       dpkg.mo       gettext-runtime.mo  grub.mo            libapt-pkg4.10.mo  lynx.mo           nano.mo     ossim.po       sed.mo      tasksel.mo
adduser.mo    binutils.mo   debian-tasks.mo  e2fsprogs.mo  gettext-tools.mo    kbd.mo             libc.mo            make.mo           newt.mo     popt.mo        shadow.mo   util-linux-ng.mo
apt.mo        coreutils.mo  dialog.mo        findutils.mo  gnupg.mo            ld.mo              libgnutls26.mo     man-db-gnulib.mo  opcodes.mo  psmisc.mo      sysstat.mo  wget.mo
aptitude.mo   cpio.mo       diffutils.mo     gawk.mo       grep.mo             libapt-inst1.2.mo  libpq5-8.4.mo      man-db.mo         ossim.mo    python-apt.mo  tar.mo      xkeyboard-config.mo
ossim410:/usr/share/locale/zh_CN/LC_MESSAGES# mv ossim.po ossim_back.po     
ossim410:/usr/share/locale/zh_CN/LC_MESSAGES# ls
Linux-PAM.mo  bfd.mo        debconf.mo       dpkg.mo       gettext-runtime.mo  grub.mo            libapt-pkg4.10.mo  lynx.mo           nano.mo     ossim_back.po  sed.mo      tasksel.mo
adduser.mo    binutils.mo   debian-tasks.mo  e2fsprogs.mo  gettext-tools.mo    kbd.mo             libc.mo            make.mo           newt.mo     popt.mo        shadow.mo   util-linux-ng.mo
apt.mo        coreutils.mo  dialog.mo        findutils.mo  gnupg.mo            ld.mo              libgnutls26.mo     man-db-gnulib.mo  opcodes.mo  psmisc.mo      sysstat.mo  wget.mo
aptitude.mo   cpio.mo       diffutils.mo     gawk.mo       grep.mo             libapt-inst1.2.mo  libpq5-8.4.mo      man-db.mo         ossim.mo    python-apt.mo  tar.mo      xkeyboard-config.mo
ossim410:/usr/share/locale/zh_CN/LC_MESSAGES# 

 

 

 

 

 

 

 

 

ossim410:/usr/share/locale/zh_CN/LC_MESSAGES# pwd
/usr/share/locale/zh_CN/LC_MESSAGES
ossim410:/usr/share/locale/zh_CN/LC_MESSAGES# ls
Linux-PAM.mo  binutils.mo      dialog.mo     gawk.mo             grub.mo            libc.mo         man-db-gnulib.mo  ossim.mo       python-apt.mo  tasksel.mo
adduser.mo    coreutils.mo     diffutils.mo  gettext-runtime.mo  kbd.mo             libgnutls26.mo  man-db.mo         ossim.po       sed.mo         util-linux-ng.mo
apt.mo        cpio.mo          dpkg.mo       gettext-tools.mo    ld.mo              libpq5-8.4.mo   nano.mo           ossim_back.po  shadow.mo      wget.mo
aptitude.mo   debconf.mo       e2fsprogs.mo  gnupg.mo            libapt-inst1.2.mo  lynx.mo         newt.mo           popt.mo        sysstat.mo     xkeyboard-config.mo
bfd.mo        debian-tasks.mo  findutils.mo  grep.mo             libapt-pkg4.10.mo  make.mo         opcodes.mo        psmisc.mo      tar.mo
ossim410:/usr/share/locale/zh_CN/LC_MESSAGES# 

 

 

 

 

  再用msgfmt,重新生成ossim.mo文件

cd /usr/share/locale/zh_CN/LC_MESSAGES/
msgfmt -o ossim.mo ossim.po
或者
msgfmt ossim.po -o ossim.mo 

   如果运行msgfmt命令出错,通常为编码问题,解决方法 之一就是维持ossim.po文件第17行的charset为UTF-8,不要 修改为gb2312或其他编码。 

 

 

 

 

 

 

 

 

  第五步:让 php 强制编码为 utf-8 

  这个步骤很重要,我之前参考网上教程后普遍存在的问题 是二级菜单都能汉化,但是顶部的一级菜单老是出现乱码。解 决方法其实就是一行代码 bind_textdomain_codeset() 

  cd /usr/share/ossim/inclue/classes   

  进入这个目录 , vi  locale.inc    打开locale.inc 这个文件 

   在文件底部,第116行添加一行代码 bind_textdomain_codeset($domain,”utf-8”);  (因为版本不同有点区别)

  或者  在文件底部,第116行添加一行代码 bindtextdomain($domain,”utf-8”);

 

         如下图所示: 

 

 

  改为

 

 

 

   有的人版本也许是如下:

 

 

 

 

 

 

  第六步:让 apach 支持 utf-8 编码 
cd /etc/apach2/conf-available 

vi charset 

注意,有些人的博客写的是charset.conf其实是版本的不同罢了。

  添加 AddDefaultCharset UTF-8 ,或者移除前面的# ,去掉注释。如下图所示。 

ossim410:/etc/apache2/conf.d# ls
charset  default-ntop.conf  localized-error-pages  munin  nagios3.conf  ntop-192.168.80.41.conf  ocsinventory.conf  ocsreports.conf  ossim.conf  other-vhosts-access-log  security  xajax.conf
ossim410:/etc/apache2/conf.d# vim charset 

 

 

 

 

 

  然后运行 /etc/init.d/apache2 restart 来重启apache服务器。

 

 

 

ossim410:/etc/apache2/conf.d# /etc/init.d/apache2 restart
Restarting web server: apache2[Thu Nov 30 11:24:46 2017] [warn] NameVirtualHost *:80 has no VirtualHosts
 ... waiting [Thu Nov 30 11:24:48 2017] [warn] NameVirtualHost *:80 has no VirtualHosts
.
ossim410:/etc/apache2/conf.d# 

 

 

 

 

 

 

 

  第七步: 修改系统语言

   登陆ossim UI控制台,通常为 

  在 Configuration  Administration  Users下选择Chinese Simplifed 。

  修改浏览器的编码为 UTF-8 编码,Chrome浏览器选择 编码方法为 Settings,More Tools, Encoding,UTF-8 。

  至此,大功告成!!!!

 

  具体如下:

  最后登录OSSIM,在用户的profile中选择Chinese simplified。系统自动生效。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
    第八步:验证

 

    成功!

 

 

 

 

 

 

 

欢迎大家,加入我的微信公众号:大数据躺过的坑        人工智能躺过的坑
 
 
 

同时,大家可以关注我的个人博客

   http://www.cnblogs.com/zlslch/   和     http://www.cnblogs.com/lchzls/      http://www.cnblogs.com/sunnyDream/   

   详情请见:http://www.cnblogs.com/zlslch/p/7473861.html

 

  人生苦短,我愿分享。本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
  目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件。 只要你一直关注和呆在群里,每天必须有收获

 

      对应本平台的讨论和答疑QQ群:大数据和人工智能躺过的坑(总群)(161156071) 

 

 

 

 

 

 

 

 

 

 

 

 


 

posted @ 2017-11-30 10:37  大数据和AI躺过的坑  阅读(1840)  评论(0编辑  收藏  举报