日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

为什么要自己架个gtalk服务器

發布時間:2023/12/29 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么要自己架个gtalk服务器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
為什么要自己架個"gtalk"服務器

如果你也因為不使用QQ,同時偶爾有即時通信的需要,GTALK又被隔在GFW下時而不能登錄,那么可以試試自己架設一個服務器。

GTALK基于一種開源通用的聊天協議,叫做jabber,或者XMPP。凡是遵循jabber協議的服務器和遵循jabber協議的客戶端都能相互通信,這樣的免費開源服務器和客戶很多。

服務器之間可以連接起來彼此通信,還可以與msn等聊天工具互通。在這里,我只架單個服務器,容納幾個賬號。

各種感慨都在最后,非技術人員請從此跳過,方法是按END鍵。

1. 選型

很多種服務器,著名的有 jabberd2, jabberd14, openfire。我用了openfire,因為1.它支持web管理界面,偶爾遠程管理的時候工具容易選擇;2.支持ssl/tls,通信安全;4.有deb包,ubuntun容易安裝;5.基于java虛擬機,也可以在windows上跑。

客戶端也有很多種,我用得少,感覺不到太多差別。為了測試,我這次安了gajim,平時主要用emacs-jabber。

2. 安裝

安裝真是沒啥可說的,下載openfire_3.7.1_all.deb,[http://download.igniterealtime.org/openfire/openfire_3.7.1_all.deb],然后裝上。

3. 運行

這個麻煩點。起初,各種毛病,反正我沒運行起來。

網上說openfire的手冊要比jabberd*要好,不過我沒空看。比如存儲賬戶信息,我希望使用內置的數據庫,不想用mysql。因為頂多10個賬戶以下,而且跑在我的筆記本上,根本不想為此架個mysql server。但是,報錯,說內置數據庫有麻煩,參見手冊,但是在手冊的哪里,沒有提。后來終于找到 (跟著某位大俠的貼子,他說,他就要放棄時找到了)了,說是第17 次版本更新的時候(?)數據庫的語句寫錯了,應該把哪段以前的都刪除就好了。

我登時傻眼了。怨不得有人說開源的維護成本高,這手冊是給人類看的么。

又一頓折騰,我屈服了,安了mysql。

可能有的同學會問,你為什么不架jabberd14或jabberd2呢?因為我遇到了更大的麻煩。用ubuntu軟件中心安裝上以后,我參考了一下手冊,我又傻眼了。手冊上說,要先建 jabber 這個用戶和組。

我知道,又有同學跳出來說了,這難么?

不難。問題是,此時處在"用ubuntu軟件中心安裝上以后"這個時間點,我發現jabber 這個用戶和組已經建了。那應該是ubuntun軟件中心的版本建的,那么,接下來手冊里的步驟,哪些已經完成,哪些沒有完成呢?

一步一步檢查?我可能檢查了20步,都完成了,一放松警惕,結果第21步軟件中心沒自動給建好。所以,在jabberd*兩個版本上,我花了一個小時,兩個小時(?),然后放棄了。

如果你小的時候,有大人一邊給你喂藥,一邊說"不苦",結果你吃下去苦得直咧嘴;如果你修牙的時候,牙醫說"不疼",結果整得你一身汗;如果你的高中老師告訴你上了大學就好啦……以后你都不要相信他哪怕一句話。

總之吧,后來我使用mysql,安裝mysql-server, mysql-client, jdbc。然后jabber服務器openfire就跑起來了。

剩下的,還需要數據庫的一些設置,登錄口令和主機啦啥的,你如果會也不用我羅嗦,你如果不會,我這一篇也寫不下,如果只列上我的步驟,哪怕一小步你的機器跟我的不一樣,還特別把你引入歧途。所以,略。

對了,得跑下面這條語句:> cat openfire_mysql.sql | mysql openfire -u root -p

openfire_mysql.sql這個東西,在我機器里是在[/usr/share/openfire/resources/database]下面。

參見[http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/database.html]。

4. 客戶端連接

* with emacs-jabberlocalhost:5222 ssl

* jabber客戶端 gajim

用戶名需要類似 young@young-laptop; localhost:5222

5. 外網連接

這個時候,內網就可以用了。如果你在防火墻 (或者NAT,或者無線路由)的里面,而你需要外網用戶連進來,需要查到你的外網IP。

可以這么查,用瀏覽器訪問[http://www.showmyip.com/]。

然后你需要設置防火墻 (或者NAT,或者無線路由),讓從外網能夠訪問你的防火墻某個端口,相當于對應訪問內網你的jabber server的IP及端口。為啥說這么麻煩呢,因為不同的防火墻在這時使用的名字不一樣。比如我的,在"轉發規則->虛擬服務器"里設置。為了對用戶友好,開發商起了這些"友好"的名字,結果連專業人員也不知道那是什么了。用戶?當然也不知道。

以上設置完成以后,你可以告訴你要聊天的對象,讓他把jabber客戶端的服務器設置為你的外網IP,還有端口……

然后,你們就可以聊了。

6. 其他

我禁用了注冊用戶的功能,凡是要用的,手動添加。文字聊天,傳文件,都行。語音沒試,我嗓子基本還是不能發聲,所以沒啥意義。

還有,各種客戶端里,還就是pc版的gtalk不行,它不能更改服務器的地址,只能連到google。

--------------------

有的同學可能會問,你為啥不用QQ呢?

其一,2007年12月,我在博客里提到 我永不使用QQ,"永"對現在而言,仍然是有效的。

其二,QQ是某個公司開發的產品,使用者沒法選擇這一服務而拒絕產品。如果你使用電子郵件這一服務,有很多產品可以用。對網絡中心提供的不爽,你還可以用google的,對google不爽,你還可以用163的。你對QQ提供的不爽呢?

其三,QQ的一些模式真的令我非常不爽,不僅2007年底事件,還經常讓我想起許多敏感詞。

比如吧,比如,我發放課件的時候,會向同學的信箱發送,而不是要求同學到我的博客或網站下載,原因非常簡單,要求別人如何如何,是一種*侵入式*的合作方式。

如果老板要求下屬必須使用某款手機,不能要求下屬去買一個,而只能為下屬備好免費的,還要問下屬樂不樂意非工作時間帶在身上,要不要公司為帶這么沉個東西付補償款。老板不能因為員工也可以用這手機聊聊私喀,就理所當然地認為有權利要求下屬了。

這讓我想起李記者講過的例子:為了避免侵版被告,公司老板要求員工自備操作系統和所有開發工具。你怎么不要求產業工人自備車床呢。

所以,各種舊的和新的原因吧,我仍然不使用QQ。很多同學問過我這個問題了,你一個IT男為啥沒有QQ呢。2007年12月那篇博客,我是這樣寫的:

我將永不使用QQ。 我的MSN和郵箱:young@nenu.edu.cn。 對給您帶來的不便深感抱歉。 添麻煩了。 有不少朋友問到原因。如果你不知道,麻煩google: QQ soff 查對方IP可以使用netstat或其他QQ版本。以此紀念soff君。不認識soff,也基本沒用過他的作品,也不關心審判結果。棄用是因為感情上不再能接受QQ,不是技術原因。 轉個故事,說明一下原因。

古時候,阿跋斯哈里發王朝的第四代哈里發叫阿爾?馬蒙。他有匹千里馬。一次,一個叫奧瑪的商人路過巴格達,他看到阿爾?馬蒙的馬,羨慕不已,提出用十個金幣來換,但阿爾?馬蒙說就是給一百個金幣,他也不換。奧瑪惱羞成怒,決定用詭計把千里馬騙到手。


奧瑪打探到阿爾?馬蒙每天獨自溜馬的路線,選擇了一個離城門最遠,人跡罕至的地方,喬裝成病重的流浪漢,躺在路邊。果然,善良的阿爾?馬蒙看到有人病倒路邊,趕緊把他扶上千里馬,打算帶他進城治病。奧瑪裝作有氣無力的樣子指了指地上的包袱,阿爾?馬蒙把他的包袱拾起來,系在馬背上。奧瑪又指了指遠處的木棒,阿爾?馬蒙以為這是流浪漢的木棒,忙轉身去撿。奧瑪趁機奪過韁繩,縱馬逃走。


阿爾?馬蒙追在后面追了很久,終于跑不動了。奧瑪知道奸計得逞,便想奚落奚落阿爾?馬蒙。他勒住馬,得意洋洋對阿爾?馬蒙說:"你丟了千里馬,連一個銅子也沒有得到,都是因為太慈悲了。你還有什么好說的?"


"馬可以歸你,但我有個要求," 阿爾?馬蒙大聲說,"別告訴別人你騙走千里馬的方法。"


奧瑪哈哈大笑說:"原來哈里發也怕別人嘲笑!"


"不,"阿爾?馬蒙喘著粗氣說,"我是擔心人們聽說這個騙局后,會懷疑昏倒在路邊的都是騙子、強盜。說不定哪一天你我也會染疾,倒臥路邊,那時誰來幫助我們呢?"

后來,兩年前吧,與包師弟聊天QQ和gmail等事情。對話基本是這樣的:


你不用QQ,如果哪天gtalk也封了呢?


那我們就用gmail,然后電話或短信通知郵件發了吧。


如果gmail也封了呢?


對話圍繞著,如果A不能用了,那么用B吧,如果B也不能用了,那么用C吧……如果Z也不能用了,我們要不要用QQ呢?


一個人,你可以殺死他,但是,也不能令他屈從。屈從,以及生命,不能共存于一個人的身體中。


好在,除了QQ,我們不是還有別的么,比如 jabber server。

--------------------博客會手工同步到以下地址:

[http://giftdotyoung.blogspot.com]


[http://blog.csdn.net/younggift]


[http://www.renren.com/268966623/profile#pblog]

總結

以上是生活随笔為你收集整理的为什么要自己架个gtalk服务器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。