ソースを参照

More secure IRC implementation

Bob Mottram 11 年 前
コミット
32e5425dc7
共有1 個のファイルを変更した45 個の追加17 個の削除を含む
  1. 45
    17
      beaglebone.txt

+ 45
- 17
beaglebone.txt ファイルの表示

1707
 
1707
 
1708
 CSipSimple?
1708
 CSipSimple?
1709
 ** Install an IRC server
1709
 ** Install an IRC server
1710
+*** Basic install
1711
+
1712
+IRC is not an especially secure system.  For instance, even with the best encryption it's easily possible to imagine IRC-specific cribs which could be used by cryptanalytic systems.  However, we'll try to implement it in a manner which will at least give the surveillance aparatus something to ponder over.
1713
+
1714
+First install some dependencies.
1715
+
1716
+#+BEGIN_SRC: bash
1717
+apt-get update
1718
+apt-get install build-essential openssl libssl-dev
1719
+#+END_SRC
1720
+
1721
+Then get the source code for ircd-hybrid.
1722
+
1723
+#+BEGIN_SRC: bash
1724
+cd /tmp
1725
+mkdir hybrid
1726
+cd hybrid
1727
+apt-get source ircd-hybrid
1728
+#+END_SRC
1729
+
1730
+Modify the source code to include SSL security.
1731
+
1732
+#+BEGIN_SRC: bash
1733
+emacs ircd-hybrid-*/debian/rules
1734
+#+END_SRC
1735
+
1736
+Beneath MAXCLIENTS add the line:
1737
+
1738
+#+BEGIN_SRC: bash
1739
+USE_OPENSSL = 1
1740
+#+END_SRC
1741
+
1742
+Then save and exit.  Now we can build the debian package for ircd-hybrid and install it.
1743
+
1744
+#+BEGIN_SRC: bash
1745
+cd ircd-hybrid-*
1746
+dpkg-buildpackage -rfakeroot -uc -b
1747
+cd ..
1748
+dpkg -i ircd-hybrid_*.deb
1749
+#+END_SRC
1750
+
1751
+Customise the configuration to your system, giving it a name and description.  In this example 192.168.1.60 is the static IP address on the BBB on the local network, so change that if necessary.
1710
 
1752
 
1711
 #+BEGIN_SRC: bash
1753
 #+BEGIN_SRC: bash
1712
-apt-get install ircd-hybrid irssi
1713
 emacs /etc/ircd-hybrid/ircd.conf
1754
 emacs /etc/ircd-hybrid/ircd.conf
1714
 #+END_SRC
1755
 #+END_SRC
1715
 
1756
 
1717
 
1758
 
1718
 Set a *network_name* and *network_desc*.
1759
 Set a *network_name* and *network_desc*.
1719
 
1760
 
1720
-Set max_clients to 20.
1761
+Set max_clients to 20, or however many you expect that you'll typically need.
1721
 
1762
 
1722
 Within the admin section set your *name* and *email*.
1763
 Within the admin section set your *name* and *email*.
1723
 
1764
 
1726
 
1767
 
1727
 Within the *auth* section set user = "*@192.168.1.60" - or whatever the fixed IP address of the BBB is on your network.
1768
 Within the *auth* section set user = "*@192.168.1.60" - or whatever the fixed IP address of the BBB is on your network.
1728
 
1769
 
1729
-Save and exit.
1770
+Save and exit, then restart the IRC server.  Open ports 6666-6670 on your internet router and forward them to the BBB.
1730
 
1771
 
1731
 #+BEGIN_SRC: bash
1772
 #+BEGIN_SRC: bash
1732
 service ircd-hybrid restart
1773
 service ircd-hybrid restart
1733
 #+END_SRC
1774
 #+END_SRC
1734
 
1775
 
1735
-Try to connect to the IRC and identify yourself as an operator.
1736
-
1737
-In irssi:
1738
-
1739
-#+BEGIN_SRC
1740
-  /connect mydomainname.com
1741
-
1742
-  /join #mychannel
1743
-
1744
-  /msg -servername chanserv REGISTER #mychannel channelpassword
1745
-
1746
-  /msg -servername chanserv set #mychannel mlock +k channelpassword
1747
-#+END_SRC
1748
-
1749
 ** Install Gopher
1776
 ** Install Gopher
1750
 Gopher is an old internet protocol which originated a few years before the web and is purely text based.  It can be quite fun to build a gopher site and browse the gopherverse.  One thing to keep in mind is that there is no security with gopher, so any text transmitted is trivially interceptable by systems such as [[https://en.wikipedia.org/wiki/XKeyscore][Xkeyscore]] or deep packet inspection.
1777
 Gopher is an old internet protocol which originated a few years before the web and is purely text based.  It can be quite fun to build a gopher site and browse the gopherverse.  One thing to keep in mind is that there is no security with gopher, so any text transmitted is trivially interceptable by systems such as [[https://en.wikipedia.org/wiki/XKeyscore][Xkeyscore]] or deep packet inspection.
1751
 
1778
 
2270
 | HTTPS    |        443 |
2297
 | HTTPS    |        443 |
2271
 | IMAP     |        143 |
2298
 | IMAP     |        143 |
2272
 | IRC      | 6665..6669 |
2299
 | IRC      | 6665..6669 |
2300
+| IRC SSL  |       6670 |
2273
 | SIP      | 5060..5061 |
2301
 | SIP      | 5060..5061 |
2274
 | SMTP     |         25 |
2302
 | SMTP     |         25 |
2275
 | SMTPS    |        465 |
2303
 | SMTPS    |        465 |