ACL Tutorial/Deutsch

From Mumble Wiki
< ACL Tutorial
Revision as of 00:16, 7 August 2007 by Xanadu (talk | contribs) (Erstellung des ''General Chat'' Kanal und die Einstellung seiner Berechtigungen)
Jump to: navigation, search

ACL Tutorial

Dieses Tutorial will euch helfen, zu verstehen wie die Rechteverwaltung in Mumble funktioniert. Details findet ihr in der ACL FAQ, hier sind einige Beispiele und Erklärungen von speziellen Gruppen etc.

Was wollen wir tun

Wir setzen einen Server auf, mit einem General chat Kanal wo jeder sprechen kann. Ebenso erstellen wir einen Custom channels Kanal wo jeder registrierte Benutzer seinen eigenen Kanal erstellen und administrieren kann. Dann, als normaler registrierter Benutzer wollen wir einige Kanäle für ein FPS Spiel erstellen, wo Leute zu ihrem Team oder zu jedem sprechen können, dazu muss dann nur eine Sprechtaste gedrückt werden.

Genug geredet, lasst uns anfangen!

Rechte setzen für den gesamten Server

Zuerst brauchen wir ein Passwort für den SuperUser. Hat dieser noch kein Passwort, dann kannst Du ihm jetzt eines geben. Gib einfach an der Konsole bzw. am Befehlsprompt folgendes ein:

murmur -supw somepassword

Dann öffnen wir Mumble und verbinden uns mit dem Server. Login: SuperUser und das Passwort welches wir ihm gegeben haben. Dann schaut das in etwa so aus:

http://img361.imageshack.us/img361/6586/mumbletut1dx8.png

Lasst uns anfangen mit den Berechtigungen. Öffne den ACL Editor, du kannst das mit rechtsklick machen. Wenn geschehen, dann siehst Du ein Fenster mit zwei Tabs. Der erste dient der Gruppenadministration, wo man Benutzer Gruppen zuordnen kann, etc. Der zweite ordnet Berechtigungen den Gruppen zu.

In eben jenem ACL Tab (wo die Berechtigungen den Gruppen zugeordnet werden) sollen zwei Regeln gesetzt werden:

Die erste erlaubt registrierten Benutzern (allen in der @auth Gruppe), Kanäle im Root Channel zu erstellen sowie deren Unterkanäle. Die zweite erlaubt allen Benutzern in der @admin Gruppe, Berechtigungen zu schreiben / zu setzen.

Jetzt erstmal löschen wir die Regel die mit der @auth Gruppe verbunden ist, indem wir diese selektieren und auf "Entfernen" klicken. Wir sagen, dass wir niemanden im Root Kanal (Allerersten Kanal) wollen. Wir wollen einen General Chat Kanal dafür. Wir fügen also eine Regel hinzu, um die User aus dem Root Kanal rauszuhalten. Um dies zu tun, klicke auf Hinzufügen und klick jede Checkbox in der Spalte "Ablehnen" an, ausser Traverse.

Warum nicht Traverse anklicken: Ganz enfach, dies würde Leuten verbieten, den Root Kanal UND alle Unterkanäle zu betreten. Da jeder andere Kanal ein Unterkanal von ROOT ist, kann dann kein User irgendeinen Kanal betreten. Also lassen wir Traverse ohne Haken. Ihr müsst bei TRAVERSE nicht erlaubt anklicken, da TRAVERSE standardmässig erlaubt ist. Standardeinstellungen sind:

  • Erlaubt: TRAVERSE, BETRETEN, SPRECHEN und ALTERNATIV SPRECHEN
  • ABLEHNEN: SCHREIBEN, STUMM/TAUBSTELLEN, VERSCHIEBEN/KICK, CHANNEL ERSTELLEN und CHANNEL VERBINDEN.

Falls Du dich wunderst, ja wir haben Schreiben, Stumm/Taubstellen, Verschieben/Kick, Channel erstellen und Channel verbinden nicht markiert und sie sind verboten. Man muss diese Rechte nicht auf ablehnen stellen, da diese per Standard abgelehnt sind (wenn wir diese nicht explizit erlauben). Jetzt schaut euer Bildschirm aus wie dieser hier (ausgenommen ihr habt einige nutzlose Checks deaktiviert):

http://img361.imageshack.us/img361/9215/mumbletut2hw0.png

Regeln werden in Mumble von oben nach unten ausgeführt. Das bedeutet, die

@admins allow write

Regel ist nutzlos, sie wird überschrieben durch die

@all deny write ...

Also müssen wir das reparieren. Wähle einfach die Regel welche @all regelt und klicke auf "Hoch". Das bringt diese Regel ganz nach oben. Du hast nun einige Standardeinstellungen für den gesamten Server etabliert.

http://img363.imageshack.us/img363/3368/mumbletut3if8.png

Erstellung des General Chat Kanal und die Einstellung seiner Berechtigungen

Dieser Kanal soll als Chatraum für jeden der unseren Kanal betritt, zur Verfügung stehen. Solange wir ihnen nicht das sprechen im Root Kanal erlauben und sie müssen diesen Kanal General Chat betreten wenn sie chatten (sprechen) wollen, dann sollten wir eine Willkommensnachricht einrichten auf dem Server, die darauf hinweist. Ok weiter gehts. Zuerst erstelle den Kanal. Das ist ganz einfach, klick Channel->Add (oder Rechtsklick in den Channel den du möchtest, und klick Add um einen Unterkanal zu erstellen, aber du weisst, der Root Kanal wird nicht angezeigt, so benutzen wir das Menü). In der Box welche erscheint, gib den Kanal Name General Chat ein und klicke "Ok", das wars.

Jetzt wollen wir jedem das Recht einräumen, in diesem Kanal zu sprechen. Also gehen wir zu "ACL editieren" (vergiss nicht, vorher den neuen Kanal auszuwählen). Du siehst die Regeln des Root Kanals im General Chat Kanal, aber wenn du diese anwählst, dann siehst du dass diese ausgegraut sind. Warum? Diese Regeln wurden vom übergeordneten Kanal (in diesem Fall dem Root Kanal vererbt. Wenn Du die Checkbox ACLs erben deaktivierst, dann verschwinden sie, aber wir wollen das nicht. Füge einfach nur eine neue Regel hinzu welche jedem (Gruppe = @all) erlaubt zu sprechen oder AltSpeak und klicke "Ok" um das zu speichern. Wir sind fertig mit diesem Kanal. Einfach, oder nicht?

http://img372.imageshack.us/img372/2854/mumbletut4wu0.png

Creating the Custom channels channel and configuring it

As we said, we will let anyone who is registered to create his own channel here. The first step is easy, create the channel just as we did before. You should have something like this just in front of your nose:

http://img361.imageshack.us/img361/1720/mumbletut5qo2.png

Now we'll be giving Make channel rights to authed people. Just go to ACL editor, add a new rule, in the group list select or write auth and select the allow make channel checkbox. Warning: If you type the group name, make sure you press enter when you've finished. This will update the rule group. You can see that if tou type and don't press enter, it will not change the group in the top listing.

http://img356.imageshack.us/img356/7333/mumbletut6vl9.png http://img387.imageshack.us/img387/6638/mumbletut6bsq9.png

And now we have a pretty channel when people can create his own channel. Note that they cannot even enter Custom channels channel but they still can create subchannels. Isn't it cool?

Registered user

In this part, we will be playing a registered and authed player with a veeeeery original name: AuthedPlayer. He will be creating his own channels to host a little public channel and two private subchannels, one for each team of a FPS game. He would like that they can talk to their team or to both teams. We are seeing how to do this with the AltSpeak right, linking channels and more.

Creating the main channel

After logging in, we may play a little to check that we can't enter the root channel once we leave it (the first time you connect you will land here), that we cannot enter the Custom channels channel, etc. Once we have checked that permissions are working as expected we start creating our first channel. We simply right click in Custom channels (remember that you can still use the menu) and click add to create a new channel. As I am very creative I called it My Private Channel. Automatically we are added to the admins group in that channel, so we can Write on it (remember the rules in the root channel? they are inherited all the way down to our channel). But that also mean that we get the Make channel permission inherited, so everyone who is authed can make a channel inside ours. We don't like that so...

http://img400.imageshack.us/img400/2249/mumbletut7dw7.png

Our rule will overwrite the inherited one, because inherited rules are always put at top. So now that we have our channel secured, we will give permission to enter and speak:

http://img387.imageshack.us/img387/2315/mumbletut8lu5.png

Note that we have disabled Applies to sub-channels. As subchannels will not be public, we don't want them to have the Enter permission granted. If we haven't disabled this option, we have to create yet another rule just to deny the Enter permission. This way is easier. And now, we have this channel ready for service. Let's continue with the subchannels.

Creating the team subchannels

First, we create two subchannels of our own channel. As usual I called them in a very creative way... Team1 and Team2. We could define rules for each one, but it is quicker to define them in the parent channel (My Private Channel) and make the subchannels inherit the rules. First, we want people in one team channel to be able to speak so we do it like that:

http://img452.imageshack.us/img452/2127/mumbletut9ix7.png

Notice that we have unchecked the Apply to this channel option, as we are defining this rule only for the subchannels. More interesting is the use of the speacial group in. This group refers to the people that are inside the channel the rules refers to. It appears it is the same as all, but it is quite different: We are going to link both channels. That means that people in different channels will hear each other. But we want that people only can hear teammates. So we use in to give Speak privileges to people in the same channel. This means, people in Team2 can't hear people in Team1 because the people in Team1 don't have rights to speak in Team2 because the in group only gives them permission in his own channel. It is a little complicated to understand at first, but it is very useful. To understand it, you have first to understand that each channel has its separate groups. That means that in group in Team1 is no the same group that in group in Team2.

To explain it better I'm going to use some names...

  • Jack is in Team1
  • John is in Team2

Both channels are linked, so the voice will be transmitted from one to the other as long as the speaker have rights in the destination channel. Jack speaks but John will not be able to hear it. That is because Jack has no rights to speak in Team2 as it is not in the Team2's in group. So voice will not be transmitted across the channel link and John will not be able to hear Jack. If we have used all instead of in for the rule, Jack and John will hear each other without a problem, as everyone is in all group.

Well, let's continue. We wanted to people talk to the other team. This is when AltSpeak comes handy. We add a rule like this:

http://img359.imageshack.us/img359/7660/mumbletut10sq9.png

This will allow everyone (both teams) to talk to each other when AltSpeaking. AltSpeak is enabled while pressing a key defined in Shortcuts (in the Mumble options). While holding down that key, voice will be transmitted using the AltSpeak rights. As we allowed anyone to AltSpeak and both channels are linked, that means that if someone talks while pressing the key, it will be heard by both teams.

And we are done.

How it looks like for some anonymous players

First you "invite" them to your team channels (you can move them from your public channel to your team channels by drag-and-drop). They have to be in your public channel to do that, as you will need Move permissions in both the origin and destination channels. If not AltSpeaking...

http://img361.imageshack.us/img361/3603/mumbletut11zg8.png http://img358.imageshack.us/img358/6740/mumbletut11bkf8.png

If AltSpeaking:

http://img361.imageshack.us/img361/5271/mumbletut12ef3.png http://img462.imageshack.us/img462/8103/mumbletut12bko1.png

Final notes

This is a quick tutorial and I have not explained a lot of things. For example custom groups. They should be easy to figure out but here goes a quick explanation:

  • You define rights for that group by simply writing the group name in the group box (remember, ENTER is your friend;)) and marking the appropriate checkboxes.
  • To add a person to the group you go to the other tab in the ACL editor, select the group name in the group box (or write it+enter), write the name you want to add in the box at the botton of the added list and press the corresponding add button. You can only add registered nicks to that list.
  • Groups are per-channel and are inheritable. If you want to inherit some group members, you can mark inherit and add the members you don't want to be part of the group in the specific channel to the remove list (there is a button at the end of the inherited list to make this easy).

I have also left behind the use of the sub group. You can find more info about that in ACL and Groups

There are a lot of rules that could have been made easier. For example, in the last part of the tutorial, you could stick the deny Make Channel and the allow AltSpeak in the same rule applied to both channel and subchannels. This is just an example of which can be made without going too deep, feel free to create your own impossible-to-understand layouts and add them to the examples section in ACL and Groups

And last but not least, please leave a comment in the discussion page of this article if you feel like that. Thanks :)