分类 系统运维 下的文章

Mumble是一个自由开源的VoIP应用,在新的 BSD 许可证下发布,主要面向的用户群体是游戏玩家。运行起来类似于TeamSpeak和Ventrilo,用户通过连接到同一个服务器来实现相互通讯。

Mumble提供了如下的漂亮特性:

  • 低延迟,这点对游戏相当重要
  • 提供游戏中的可视插件,通过它你可以知道是谁正在和你通话并定位他们的位置
  • 交谈内容经过加密的,能够保护你的隐私和安全
  • 界面简单易于上手
  • 稳定高效的使用你的服务器资源

安装 Mumble

Mumble已经流行开来,进入了许多linux主流发行版的软件仓库,这使它安装起来更加的方便。若你使用的是Ubuntu那么使用apt-get就能安装,详细命令如下:

$ sudo apt-get install mumble-server

mumble install

这条命令将会在你的服务器上安装服务端(亦称Murmur)。

配置 Mumble

运行以下命令启动Mumble:

$ sudo dpkg-reconfigure mumble-server

会弹出以下一些问题:

mumble q1

选择“是”让服务器开机时自动启动mumble,接着它会询问你是否运行高优先级模式以保持低延迟,为了让它保持最佳性能这是个不错的主意。

mumble q2

接着为你刚安装好的mumble服务端设管理员用户的密码,记住这个密码,它会在登录时用到。

mumble q3

安装 Mumble 客户端

客户端可以安装到许多的主流操作系统中,例如windows,mac和linux。我们将教你在Ubuntu linux上安装和配置,你可以使用软件中心也可以用命令安装客户端:

$ sudo apt-get install mumble

第一次运行mumble时,配置向导将会帮助你配置音频的输入输出,使其能在客户端上保持最好的效果。第一次同样也会询问你要使用的是什么声音设备和麦克风:

mumble client 1

然后它将帮你校准设备:

mumble client 2

因为mumble会帮你加密所有的通讯内容所以它会要求你创建证书:

mumble client 3

完成配置向导后你就能添加第一个服务器,连接对话框如下图所示:

mumble add server

首先输入一个标签,名字任意因为那只不过是为了记住服务器的,然后输入服务器的地址和端口,最后使用“SuperUser”作为用户名,而密码则是你配置mumble服务器端时输入的密码。

现在你可以连接到服务器了,在联网玩游戏或与你好友、队友聊天开黑时享受这些功能给你带来的乐趣吧!


via: http://linoxide.com/ubuntu-how-to/install-mumble-ubuntu/

作者:Adrian Dinu 译者:martin2011qi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

大家好,今天我来向大家介绍如何在 Ubuntu12.04 上设置 SSH 的无密码登录功能。仅在工作站上有正确的(公私)密钥对以供匹配时SSH服务端才会允许你登录,反之访问将不会被允许。

正常情况下,我们需要连上SSH的控制台输入用户名及其密码才行。如果两者全部正确,我们就可以访问,反之访问被服务端拒绝。不过相比而言还有一种比用密码更安全的登录方式,我们可以在登录SSH时通过加密密钥进行无密码登录。

如果你想启用这个安全的方式,我们只需简单的禁用密码登录并只允许加密密钥登录即可。使用这种方式时,客户端计算机上会产生一对私钥和公钥。接着客户端得把公钥上传到SSH服务端的authorized\_key文件中去。在授予访问前,服务器及客户端电脑会校验这个密钥对。如果服务器上的公钥与客服端提交的私钥匹配则授予访问权限,否则访问被拒绝。

这是认证到SSH服务器的非常安全的一种做法,如果你想为单一的SSH用户登录实现安全登录,这也是备受推崇的方式。这里快速的过一遍如何启用无密码登录SSH的配置过程。

1.安装Openssh服务端

首先,我们需要更新我们的本地库索引。所以如下所见,我们需要先输入“apt-get update”

$ sudo apt-get update

Updating Repo Index

现在我们可以通过以下命令安装openssh-server:

$ sudo apt-get install openssh-server

Installing openssh server

2. 开启openssh服务

在OpenSSH已经成功安装在Ubuntu14.04操作系统上了之后,我们要启动OpenSSH的服务。以下命令让你启动/开启服务。

$ sudo service ssh start

$ sudo /etc/init.d/ssh start

3. 配置密钥对

在我们安装并启动了OpenSSH服务以后。现在终于到了要我们搞定公私钥对的时候了,在终端中运行以下命令:

$ ssh-keygen -t rsa

在运行完以上命令了以后,我们需要回答一系列的问题。首先选择保存密钥的路径,按回车将会选择默认路径即家目录的一个隐藏的.ssh文件夹。下一个提示是请输入口令提醒。我个人将此留空(直接回车)。之后密钥对就会创建,大功告成。

Generating Key Pair

在密钥对生成以后,我们需要将客户端上的公钥复制到SSH服务端或者主机,来创建对客户端的信任关系。运行以下命令复制客户端的公钥到服务端。

$ ssh-copy-id user@ip_address

在公钥上传之后,我们现在可以禁用通过密码登陆SSH的方式了。为此,我们需要通过以下命令用文本编辑器打开/etc/ssh/ssh\_config

$ sudo nano /etc/ssh/sshd_config

现在,我们需要按照下图所示去掉几行注释并进行一些赋值。

Configuring sshd Config

4. 重启SSH服务

最后,在我们配置完SSH服务端后,为了使改动生效我们需要重启SSH服务。在终端或控制台运行以下命令重启。

$ sudo service ssh restart

$ sudo /etc/init.d/ssh restart

Restarting ssh

现在,我们可以试试不用密码仅用密钥对的方式登录ssh服务端了。

总结

太好了!我们成功的配置了无密码登录SSH。使用加密密钥对进行SSH服务器认证是非常安全的一种做法,如果你想为SSH的单一用户登录实施安全的认证这也是备受推崇的方式。所以,如果你还有什么问题或建议,请在意见框中向我们反馈。很欣慰你能读完,希望你能喜欢加密的SSH安全登录 :-)


via: http://linoxide.com/ubuntu-how-to/setup-passwordless-ssh-logon-ubuntu-14-04/

作者:Arun Pyasi 译者:martin2011qi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

Linux-dash是一款为Linux设计的基于web的轻量级监控面板。这个程序会实时显示各种不同的系统属性,比如CPU负载、RAM使用率、磁盘使用率、网速、网络连接、RX/TX带宽、登录用户、运行的进程等等。它不会存储长期的统计。因为它没有后端数据库。

本篇文章将会向你展示如何安装和设置Linux dash,这里所使用的web服务器是Nginx.

安装

首先我们要启用EPEL 仓库

接下来,我们需要用下面的命令安装nginx。

sudo yum install nginx

安装 php-fpm 组件

sudo yum install git php-common php-fpm

现在我们要在nginx中配置Linux-dash。我们如下创建 /etc/nginx/conf.d/linuxdash.conf。

sudo vim /etc/nginx/conf.d/linuxdash.conf

server {
 server_name $domain_name;
 listen 8080;
 root /var/www;
 index index.html index.php;
 access_log /var/log/nginx/access.log;
 error_log /var/log/nginx/error.log;

 location ~* \.(?:xml|ogg|mp3|mp4|ogv|svg|svgz|eot|otf|woff|ttf|css|js|jpg|jpeg|gif|png|ico)$ {
 try_files $uri =404;
 expires max;
 access_log off;
 add_header Pragma public;
 add_header Cache-Control "public, must-revalidate, proxy-revalidate";
 }

 location /linux-dash {
 index index.html index.php;
 }

 # PHP-FPM via sockets
 location ~ \.php(/|$) {
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 fastcgi_split_path_info ^(.+?\.php)(/.*)$;
 fastcgi_pass unix:/var/run/php-fpm.sock;
 if (!-f $document_root$fastcgi_script_name) {
 return 404;
 }
 try_files $uri $uri/ /index.php?$args;
 include fastcgi_params;
 }
}

下一步是配置php-fpm。用编辑器打开/etc/php-fpm.d/www.conf。

sudo vim /etc/php-fpm.d/www.conf

确保设置了如下的“listen”,“user”和“group”字段。你可以保留其它的配置不变。

. . .
listen = /var/run/php-fpm.sock
user = nginx
group = nginx
. . .

现在,我们要在/var/www中下载并安装linux-dash。

git clone https://github.com/afaqurk/linux-dash.git
sudo cp -r linux-dash/ /var/www/
sudo chown -R nginx:nginx /var/www

接下来,重启 Nginx和php-fpm。

sudo service nginx restart
sudo service php-fpm restart

设置nginx和php-fpm开机自动启动。

sudo chkconfig nginx on
sudo chkconfig php-fpm on

在本例中,我们使用TCP端口8080配置linux-dash。因此需确保防火墙没有阻止8080 TCP端口。

用linux-dash监控Linux服务器

你现在可以在浏览器中输入http://<IP地址>:8080/linux-dash/来访问Linux-dash。

web面板包含了不同的组件,每个都显示独特的系统属性。你可以自定义web面板的外观也可以关闭一些组件。

美好的一天!

下篇文章中再见。


via: http://www.unixmen.com/install-linux-dash-web-based-monitoring-system-centosrhel/

作者:Jijo 译者:geekpi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

Cherokee 是一个免费,开源,高性能轻量级的全功能web服务器,支持大部分主流操作系统(Linux、 Mac OS X、 Solaris 和 BSD)。它支持TLS/SSL、FastCGI、 SCGI、 PHP、 uWSGI、 SSI、 CGI、 LDAP、 HTTP代理、 视频流处理、 内容缓存、 流量控制、 虚拟主机、Apache兼容的日志文件,以及负载均衡等功能。

今天我们介绍一下怎样在Ubuntu Server 14.04 LTS安装和配置轻量级的web服务器Cherokee,只需要注意修改软件源列表,同样适用于Ubuntu12.04,12.10和13.04。

在Ubuntu Server上逐步安装和配置Cherokee

1. 更新Ubuntu软件包索引

首先登陆Ubuntu Server,执行以下命令,更新Ubuntu Server的软件源并安装可用的更新。

sudo apt-get update
sudo apt-get upgrade

2. 加入 PPA

通过运行以下命令增加Cherokee的PPA

sudo add-apt-repository ppa:cherokee-webserver
sudo apt-get update

对于运行14.04版本的服务器还需要执行以下步骤

cd /etc/apt/sources.list.d
nano cherokee-webserver-ppa-trusty.list

deb http://ppa.launchpad.net/cherokee-webserver/ppa/ubuntu saucy main 替换 deb http://ppa.launchpad.net/cherokee-webserver/ppa/ubuntu trusty main

再次运行命令:

sudo apt-get update

3. 使用apt-get安装Cherokee

使用如下命令安装Cherokee和SSL模块

sudo apt-get install cherokee cherokee-admin cherokee-doc libcherokee-mod-libssl libcherokee-mod-streaming libcherokee-mod-rrd

4. 配置Cherokee

重启Cherokee服务:

sudo service cherokee start

使用Cherokee最大的好处就是能通过一个简单易用的web界面 cherokee-admin 来管理所有的配置选项。推荐通过浏览器来管理Cherokee。使用如下命令启动cherokee-admin

sudo cherokee-admin

注意: cherokee-admin 会显示用户名,一次性密码和web管理界面地址。

请记录下这个一次性密码,登录到管理界面时需要它。

默认情况下,只能通过localhost访问Cherokee-admin,如果需要通过其它网络地址来访问,可以使用‘-b’参数。如果不指定任何IP地址,Cherokee-admin会自动监听所有网络端口。然后就可以通过网络访问Cherokee-admin

sudo cherokee-admin -b

通过指定IP地址访问Cherokee-admin

sudo cherokee-admin -b 192.168.1.102

5. 浏览cherokee-admin面板

在你喜欢的浏览器中输入地址http://主机名或IP地址:9090/就可以进入控制面板了。例如我的是http://127.0.0.1:9090/,在浏览器中显示如下图

cherokee-admin-panel

好了,到这里我们已经成功地在Ubuntu Server上安装和配置了Cherokee。


via: http://linoxide.com/ubuntu-how-to/install-cherokee-lightweight-web-server-ubuntu-14-04/

作者:Arun Pyasi 译者:ictlyh 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

如果你是那种使用各式设备在网上工作的人,我相信你肯定需要一个在不同设备间同步文件及目录的方法,至少是非常渴望有这种功能。

BitTorrent Sync简称btsync,是一个基于BitTorrent(著名P2P文件分享协议)的免费跨平台同步工具。与传统BitTorrent客户端不同的是,btsync可以在不同操作系统及设备之间加密数据传输和基于自动生成的密钥来授予访问共享文件的权限。

更具体点,当你想要通过btsync共享一些文件或文件夹,相应的读/写密钥(所谓的密码)就创建好了。这些密钥可以通过HTTPS链接,电子邮件,二维码等在不同的设备间共享传递。一旦两台设备通过一个密钥配对成功,其所对应的内容将会直接在其间同步。如果没有事先设置,传输将不会有文件大小和速度的限制。你可以在btsync中创建账号,这样你可以通过 web 界面来创建和管理通过网络分享的密钥和文件。

BitTorrent Sync可以在许多的操作系统上运行,包括Linux,MacOS X,Windows,在 AndroidiOS上也可以使用。在这里,我们将教你在Linux环境(一台家用服务器)与Windows环境(一台笔记本电脑)之间如何使用BitTorrent Sync来同步文件。

Linux下安装btsync

BitTorrent Sync可以在项目主页直接下载。由于Windows版本的BitTorrent Syn安装起来十分简单,所以我们假设笔记本上已经安装了。我们把焦点放到Linux服务器上的安装和配置。

在下载页面中选择你的系统架构,右键相应链接,复制连接地址(或者类似的功能,不同浏览器可能不同),将链接粘贴到在终端中用wget下载,如下:

64位Linux:

# wget http://download.getsyncapp.com/endpoint/btsync/os/linux-x64/track/stable 

32位Linux:

# wget http://download.getsyncapp.com/endpoint/btsync/os/linux-i386/track/stable 

下载完成后,把包中内容解压到你专门创建的目录中,为了完成这些:

# cd /usr/local/bin
# mkdir btsync
# tar xzf stable -C btsync 

现在你可以选择将/usr/local/bin/btsync添加到环境变量PATH中去。

export PATH=$PATH:/usr/local/bin/btsync

或者在该文件夹中运行btsync的二进制文件。我们推荐使用第一种方式,虽需要少量的输入但更容易记忆。

配置btsync

btsync带有一个内置的网络服务器,用作其管理接口。想要使用这个接口你需要创建一个配置文件。你可以使用以下命令来创建:

# btsync --dump-sample-config > btsync.config 

然后使用你最常用的编辑器对btsync.config文件的(webui部分)作以下修改

"listen" : "0.0.0.0:8888",
"login" : "yourusername",
"password" : "yourpassword"

你可以选择任何用户名和密码。

如果你将来想要优化一下它的配置,可以看一下 /usr/local/bin/btsync 目录下的 README 文件,不过现在我们先继续下面的步骤。

第一次运行btsync

作为一个系统的最高执行者我们需要依赖日志文件!所以在我们启动btsync之前,我们将先为btsync创建一个日志文件。

# touch /var/log/btsync.log 

最后,让我们启动btsync:

# btsync --config /usr/local/bin/btsync/btsync.config --log /var/log/btsync.log 

现在在你的浏览器中输入正在运行的btsync所监听的服务器IP地址和端口(我这是192.168.0.15:8888),同意其隐私政策,条款和最终用户许可协议:

这样页面就会转到你安装的btsync主页:

点击添加文件夹并在你的文件系统中选择一个你想要分享的目录,在我们的例子中,我们使用的是/btsync:

现在这样就够了。在运行接下来的步骤之前,请先在Windows主机(或你想使用的其他Linux设备)上安装BitTorrent Sync。

btsync分享文件

这个视频(需要翻墙)展示了如何在安装Windows8的电脑[192.168.0.106]上分享现有的文件夹。在添加好想要同步的文件夹后,你会得到它的密钥,通过“Enter a key or link”菜单(上面的图已经展示过了)添加到你安装到的Linux机器上,并开始同步。

现在用别的设备试试吧;找一个想要分享的文件夹或是一些文件,并通过Linux服务器的网络接口将密钥导入到你安装的“中央”btsync中。

以常规用户开机自动运行btsync

你们可能注意到了,视频中在同步文件时是使用'root'组的用户创建/btsync目录的。那是因为我们使用超级用户手动启动BitTorrent Sync的原因。在通常情况下,你会希望它开机自动使用无权限用户(www\_data或是专门为此创建的账户,例如btsync)启动。

所以,我们创建了一个叫做btsync的用户,并在/etc/rc.local文件(exit 0 这一行前)添加如下字段:

sudo -u btsync /usr/local/bin/btsync/btsync --config /usr/local/bin/btsync/btsync.config --log /var/log/btsync.log

最后,创建pid文件:

# touch /usr/local/bin/btsync/.sync/sync.pid 

并递归更改 /usr/local/bin/btsync的所属用户:

# chown -R btsync:root /usr/local/bin/btsync 

现在重启试试,看看btsync是否正在由预期中的用户运行:

基于你选择的发行版不同,你可能找到不同的方式来开机自启动btsync。在本教程中,我选择rc.local的方式是因为它在不同发行版中都可使用。

尾注

如你所见,BitTorrent Sync对你而言几乎就像一个无服务器的Dropbox。我说“几乎”的原因是:当你在局域网内同步数据时,同步在两个设备之间直接进行。然而如果你想要跨网段同步数据,并且你的设备可能要穿过防火墙的限制来配对,那就只能通过一个提供BitTorrent的第三方中继服务器来完成同步传输。虽然声称传输经过 AES加密,你还是可能会遇到不想发生的状况。为了你的隐私着想,务必在你共享的每个文件夹中关掉中继/跟踪选项。

希望这些对你有用!分享愉快!


via: http://xmodulo.com/share-files-between-computers-over-network.html

作者:Gabriel Cánepa 译者:martin2011qi 校对:校对者ID

本文由 LCTT 原创翻译,Linux中国 荣誉推出

大家好!这是一篇介绍如何在服务器或个人电脑上从MySQL迁移到MariaDB的教程。也许你会问为什么我们要将数据库管理从MySQL迁移到MariaDB。往下看我们告诉你为什么这样做。

为什么要用MariaDB来代替MySQL

MariaDB是MySQL社区开发的分支,也是一个增强型的替代品。它由MySQL前开发者们带头组织的基金会开发,使用起来和MySQL完全一样。自从Oracle买下了MySQL,它就不再自由开源了,但是 MariaDB仍然自由开源。一些如谷歌、维基、LinkedIn、Mozilla等的顶级的网站已经迁移到MariaDB了。它的优势在哪里:

  • 向后兼容MySQL
  • 永远开源
  • 由MySQL缔造者的维护
  • 更尖端的功能
  • 更多的存储引擎
  • 大型的网站已经转向MariaDB

现在,让我们迁移到MariaDB吧!

让我们创建一个叫linoxidedb用于测试的示例数据库。

使用以下命令用root账户登陆MySQL:

$ mysql -u root -p

输入mysql 的 root 用户密码后,你将进入mysql的命令行

创建测试数据库:

在mysql命令行输入以下命令以创建测试数据库。

mysql> create database linoxidedb;

查看可用的数据库,输入以下命令:

mysql> show databases;

creating test databases

如你所见,算上刚刚新建的linoxidedb我们一共有5个数据库。

mysql> quit

现在,我们就将刚创建的数据库从MySQL迁移到MariaDB。

注:使用CentOS这类基于fedora的linux发行版没有必要参考这篇教程,因为它们在安装MariaDB时会自动代替MySQL,无需备份现有的数据库,你只需要更新mysql就可以得到mariadb。

1. 备份现有的数据库

我们第一个重要的步骤就是备份现有的数据库。我们在终端(不是MySQL命令行)里输入如下命令来完成备份。

$ mysqldump --all-databases --user=root --password --master-data > backupdatabase.sql

哇哦!我们遇到了点麻烦。别担心我们可以搞定。

$ mysqldump: Error: Binlogging on server not active

mysqldump error

为了修复这个错误,我们需要对my.cnf文件做一些小改动。

编辑my.cnf文件:

$ sudo nano /etc/mysql/my.cnf

在[mysqld]部分添加如下参数。

log-bin=mysql-bin

configuring my.cnf

好了,在保存并关闭文件后,我们需要重启一下mysql服务。运行以下命令重启:

$ sudo /etc/init.d/mysql restart

现在,重新运行mysqldump命令来备份所有的数据库。

$ mysqldump --all-databases --user=root --password --master-data > backupdatabase.sql

dumping databases

上面的命令将会备份所有的数据库,把它们存储在当前目录下的backupdatabase.sql文件中。

2. 卸载MySQL

首先,我们得把my.cnf文件挪到安全的地方去

:在你卸载MySQL包的时候不会自动删除my.cnf文件,我们这样做只是以防万一。在MariaDB安装时,它会询问我们是保持现存的my.cnf文件,还是使用包中自带的版本(即新my.cnf文件)。

在shell或终端中输入如下命令来备份my.cnf文件:

$ sudo cp /etc/mysql/my.cnf my.cnf.bak

运行命令来终止mysql服务:

$ sudo /etc/init.d/mysql stop

然后移除mysql包:

$ sudo apt-get remove mysql-server mysql-client

uninstalling mysql

3. 安装MariaDB

这是在Ubuntu系统中安装MariaDB的命令:

$ sudo apt-get install software-properties-common
$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
# sudo add-apt-repository 'deb http://mirror.mephi.ru/mariadb/repo/5.5/ubuntu trusty main'

adding mariadb repo

键值导入并且添加完仓库后,你就可以用以下命令安装MariaDB了:

$ sudo apt-get update
$ sudo apt-get install mariadb-server

installing mariadb

my.conf configuration prompt

我们应该还没忘记在MariaDB安装时,它会问你是使用现有的my.cnf文件,还是包中自带的版本。你可以使用以前的my.cnf也可以用包中自带的。即使你想直接使用新的my.cnf文件,你依然可以晚点时候将以前的备份内容还原进去(别忘了我们已经将它复制到安全的地方了)。所以,我们直接选择了默认的选项“N”。如果需要安装其他版本,请参考MariaDB官方仓库

4. 恢复配置文件

想要将my.cnf.bak中的内容恢复到my.cnf,在终端中输入以下命令。由于my.cnf.bak文件在当前目录下,所以我们只要简单的执行以下命令即可:

$ sudo cp my.cnf.bak /etc/mysql/my.cnf

5. 导入数据库

最后,让我们把我们之前创建的数据库导入吧!运行一下命令即可完成导入。

$ mysql -u root -p < backupdatabase.sql

就这样,我们已成功将之前的数据库导入了进来。

来,让我们登录一下mysql命令行,检查一下数据库是否真的已经导入了:

$ mysql -u root -p

importing database

为了检查数据库是否被迁移到MariaDB,请在MariaDB命令行中输入“show databases;”不用输入(“”),如下:

mariaDB> show databases;

mysql to mariadb database migrated

如你所见,linoxidedb及所有的数据库都已经成功的被迁移了。

总结

最后,我们已经成功地从MySQL迁移到了MariaDB数据库管理系统。MariaDB比MySQL好,虽然在性能方面MySQL还是比它更快,但是MariaDB的优点在于它额外的特性与支持的许可证。这能够确保它自由开源(FOSS),并永久自由开源,相比之下MySQL还有许多额外的插件,有些不能自由使用代码、有些没有公开的开发进程、有些在不久的将来会变的不再自由开源。如果你有任何的问题、评论、反馈给我们,不要犹豫直接在评论区留下你的看法。谢谢观看本教程,希望你能喜欢MariaDB。


via: http://linoxide.com/linux-how-to/migrate-mysql-mariadb-linux/

作者:Arun Pyasi 译者:martin2011qi 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出