Services/IRC: Difference between revisions

From DcUsers
No edit summary
 
(12 intermediate revisions by the same user not shown)
Line 4: Line 4:
| account =
| account =
| ipv6 = true
| ipv6 = true
| security_notes = Your messages are secured if you connect using the secure port(s), but you need to ensure the recipient uses a secure connection too ; this can be achieved using chanmode +S (see below).
| security_notes = This service is secure. Users' identity is not guarantied though, but you can trust a service account once validated using another secure channel.
{{warning}} Unfortunately, due to a bug in the software (see {{dc-projects|233}}), the link between our servers is not yet fully secured, but you can work around this problem if you talk only to people connected to the same server as yourself.
}}
}}


Line 14: Line 13:


To connect you need and IRC client, like for example:
To connect you need and IRC client, like for example:
* [http://irssi.org/ Irssi]
* [https://www.pidgin.im Pidgin]
* [http://www.pidgin.im Pidgin]
* [https://weechat.org/ WeeChat]

* [http://weechat.org/ WeeChat]
If you have problems seeing the modes then you probably need to upgrade your client to [https://docs.inspircd.org/faq/#why-does-my-client-not-show-mode-changesopped-users-on-joinetc-correctly-when-using-inspircd-v3 fix bugs parsing the protocol].


You need to configure these parameters:
You need to configure these parameters:
* host: irc.milkypond.org
* host: irc.milkypond.org
* port: 6667, 6669, 6680 or '''6697'''
* port:
* tls: enabled (compulsory since 2021-03-16)
** 6680 (if you want a secure connection using SSL/TLS)

** 6667 or 6669 (because 6667 is sometimes filtered)
No password is needed to connect.
No password is needed to connect but you may pass your Service Account password and it will be passed to NickServ automagically.

The recommended and most secure configuration is:
* create a certificate and authenticate with CertFP (see below)
* create a service account and associate your certificate with your account


=== Using a Web Interface ===
=== Using a Web Interface ===
Line 32: Line 36:
== Official Channels ==
== Official Channels ==


* #MilkyPond: main channel used to meet with other users and friends and ask general questions
* '''#MilkyPond''': main channel used to meet with other users and friends and ask general questions
* #DuckCorp: contact with DuckCorp Administrators and technical discussions
* '''#DuckCorp''': contact with DuckCorp Administrators and technical discussions


== Contacting IRC Administrators ==
== Contacting IRC Administrators ==
Line 39: Line 43:
In case of problems on IRC you can find connected administrators using this command (mind the idle time):
In case of problems on IRC you can find connected administrators using this command (mind the idle time):
/QUOTE STATS P
/QUOTE STATS P

Beware IRC Administrators may not be DuckCorp Administrators.


== Features ==
== Features ==
Line 51: Line 53:
You can get help about a particular command using this command:
You can get help about a particular command using this command:
/QUOTE HELP <command>
/QUOTE HELP <command>

The list of commands is also [https://docs.inspircd.org/2/commands/ documented here].


==== Additional Commands for IRC Administrators ====
==== Additional Commands for IRC Administrators ====
Line 58: Line 62:
=== User Modes ===
=== User Modes ===


You can see available channel modes using this command:
You can see available user modes using this command:
/QUOTE HELP UMODE
/QUOTE HELP UMODES

==== Filtering Unwanted Messages ====


We try to ban spam and nasty people from our network but if we're not fast enough (sleeping…) you might want to take action into your own hands.
==== Mode +g ====
(partial quote from the ircd-ratbox documentation)


With the "Caller ID" mode (user mode +g) a user can define an access list. With this mode you will be notified when someone not in your accept list is trying to contact you, but at a reasonable rate. The person trying to contact you will get notified their messaqe has been blocked.
When a client is set +g, that user will be in "Caller ID" mode. Any user that messages a +g client will receive a notice saying that they are in +g (server side ignore) mode. The target client (who is set +g) will also receive a notice saying that so and so messaged them, and that they are in +g mode. The target of the message will only receive one notification per minute, from any client, in order to help prevent flooding. The sender will '''not''' have the rate limit, and will receive a notice saying the target is in +g mode every time they send a message. Note that this behavior is similar to the way AWAY messages are done.


You can use the '''ACCEPT''' command to define your accept list.
There are numerous benefits for both opers and regular users, including the ability to stop spambot messages from ever reaching your client, stopping private message and CTCP floods, and being able to sit on IRC in privacy.


To add someone to your list:
One question that arises is how to message specific users, while blocking out everyone else. The command ACCEPT is your answer. To add a user to your accept list, issue the raw command:
/QUOTE ACCEPT <nick>,<nick>,<nick>,…
/QUOTE ACCEPT <nick>,<nick>,<nick>,…
That user will now be able to send messages to your client until the association is broken.
That user will now be able to send messages to your client until the association is broken.
Line 74: Line 79:
Associations break in one of the following situations: when an accepted user QUIT's (or is on the other side of a split), you QUIT, or the accepted user changes their nick. The reason why a remote user's nick change will remove them from your accept list is so that you cannot track a user after they changed their nick.
Associations break in one of the following situations: when an accepted user QUIT's (or is on the other side of a split), you QUIT, or the accepted user changes their nick. The reason why a remote user's nick change will remove them from your accept list is so that you cannot track a user after they changed their nick.


Viewing the accept list is also very easy. Issue the raw command:
You can view you accept list at any time:
/QUOTE ACCEPT *
/QUOTE ACCEPT *
Removing a user from your accept list is also simple. Issue the command:
Removing a user from your accept list can be done with this command:
/QUOTE ACCEPT -<nick>
/QUOTE ACCEPT -<nick>


Line 82: Line 87:


You can see available channel modes using this command:
You can see available channel modes using this command:
/QUOTE HELP CHMODE
/QUOTE HELP CHMODES

These extra modes are also available:
* +R - registered - Users must be registered with services to JOIN
* +z - ssl only - Requires SSL/TLS connections to join


=== IRC Services ===
=== IRC Services ===
Line 107: Line 108:
/QUOTE <service> HELP
/QUOTE <service> HELP


==== Additional Services for IRC Administrators ====
==== Register an Account ====
(exact privileges depends on trust and delegation)


To create an account first register it:
* OPERSERV: superadmin commands
/QUOTE nickserv register <password> <email>
* GLOBAL: messaging all users


Then check your emails and use the provided verification command that should look like this:
=== Secure Service Authentication (CERTFP) ===
/QUOTE nickserv verify register <nick> <code>

Your account will not be valid until verified.

If you change your email address you will need to revalidate it using the same process.

==== Secure Service Authentication (CERTFP) ====


You can authenticate to your service account using a password, but it is more secure to use a certificate and not too complicated to setup. The Freenode network has a good [https://freenode.net/kb/answer/certfp documentation for this feature].
You can authenticate to your service account using a password, but it is more secure to use a certificate and not too complicated to setup. The Freenode network has a good [https://freenode.net/kb/answer/certfp documentation for this feature].


Don't forget to select the SASL/EXTERNAL authentication method and use TLS.
== Documentation ==


The commands to associate your certificate to your account are the same as on Freenode:
* [http://docs.ratbox.org/svc_userintro.shtml IRC Services Introduction]
* get your fingerprint with: /whois <mynick>
* add the fingerprint to your account (you need to have registered and account and by logged in): /QUOTE nickserv cert add <fpr>

==== Additional Services for IRC Administrators ====
(exact privileges depends on trust and delegation)

* OPERSERV: superadmin commands
* GLOBAL: messaging all users


== Technical Details ==
== Technical Details ==

Latest revision as of 06:07, 8 December 2021

Service 'IRC'
Description IRC (Internet Relay Chat) is a chat system. We have our own internal network, formerly used to contact administrators and discuss with other users. Even is not advertise widely, external people may join the network, so you can invite your friend.
Prerequisite None
Account none IPv6 Ready Yes
Security Notes This service is secure. Users' identity is not guarantied though, but you can trust a service account once validated using another secure channel.


Access

Using an IRC Software

To connect you need and IRC client, like for example:

If you have problems seeing the modes then you probably need to upgrade your client to fix bugs parsing the protocol.

You need to configure these parameters:

  • host: irc.milkypond.org
  • port: 6667, 6669, 6680 or 6697
  • tls: enabled (compulsory since 2021-03-16)

No password is needed to connect but you may pass your Service Account password and it will be passed to NickServ automagically.

The recommended and most secure configuration is:

  • create a certificate and authenticate with CertFP (see below)
  • create a service account and associate your certificate with your account

Using a Web Interface

Use the following URL:

https://irconweb.milkypond.org/

Official Channels

  • #MilkyPond: main channel used to meet with other users and friends and ask general questions
  • #DuckCorp: contact with DuckCorp Administrators and technical discussions

Contacting IRC Administrators

In case of problems on IRC you can find connected administrators using this command (mind the idle time):

/QUOTE STATS P

Features

Commands

You can see available commands using this command:

/QUOTE HELP

You can get help about a particular command using this command:

/QUOTE HELP <command>

The list of commands is also documented here.

Additional Commands for IRC Administrators

All special commands are listed in the Oper MOTD.

User Modes

You can see available user modes using this command:

/QUOTE HELP UMODES

Filtering Unwanted Messages

We try to ban spam and nasty people from our network but if we're not fast enough (sleeping…) you might want to take action into your own hands.

With the "Caller ID" mode (user mode +g) a user can define an access list. With this mode you will be notified when someone not in your accept list is trying to contact you, but at a reasonable rate. The person trying to contact you will get notified their messaqe has been blocked.

You can use the ACCEPT command to define your accept list.

To add someone to your list:

/QUOTE ACCEPT <nick>,<nick>,<nick>,…

That user will now be able to send messages to your client until the association is broken.

Associations break in one of the following situations: when an accepted user QUIT's (or is on the other side of a split), you QUIT, or the accepted user changes their nick. The reason why a remote user's nick change will remove them from your accept list is so that you cannot track a user after they changed their nick.

You can view you accept list at any time:

/QUOTE ACCEPT *

Removing a user from your accept list can be done with this command:

/QUOTE ACCEPT -<nick>

Channel Modes

You can see available channel modes using this command:

/QUOTE HELP CHMODES

IRC Services

To help not loose your favorite nick or channel, the IRC Services can register them so you're still in control. It also helps manage channel with a variety of tools. Look at the user introduction manual in the documentation below.

List of Services:

  • ALIS: search available channels
  • USERSERV: register an account
  • INFOSERV: read operator news (not in use in this network, we send global announces and post to the mailing-list)
  • STATSERV: few network information (not that useful)

List of Services available with an account (see USERSERV):

  • NICKSERV: register nicknames
  • GROUPSERV: manage group of users used in ACLs
  • CHANSERV: register and manage channels
  • MEMOSERV: send and receive memos from other registered users

To get help on each service commands, use the following command:

/QUOTE <service> HELP

Register an Account

To create an account first register it:

/QUOTE nickserv register <password> <email>

Then check your emails and use the provided verification command that should look like this:

/QUOTE nickserv verify register <nick> <code>

Your account will not be valid until verified.

If you change your email address you will need to revalidate it using the same process.

Secure Service Authentication (CERTFP)

You can authenticate to your service account using a password, but it is more secure to use a certificate and not too complicated to setup. The Freenode network has a good documentation for this feature.

Don't forget to select the SASL/EXTERNAL authentication method and use TLS.

The commands to associate your certificate to your account are the same as on Freenode:

  • get your fingerprint with: /whois <mynick>
  • add the fingerprint to your account (you need to have registered and account and by logged in): /QUOTE nickserv cert add <fpr>

Additional Services for IRC Administrators

(exact privileges depends on trust and delegation)

  • OPERSERV: superadmin commands
  • GLOBAL: messaging all users

Technical Details

This service is made using: