Tuesday, March 21, 2017

RetroShare - Encypted tunnels for sharing and communication (Ubuntu, MacOS, Win)

RetroShare06

Encrypted tunnels for sharing and communication

To install RetroShare from PPA's into Ubuntu 16.04 :

# for Retroshare releases only
   sudo add-apt-repository ppa:retroshare/stable
# then
   sudo apt update
   sudo apt install retroshare06 


You can also build RetroShare from source or from Git, even the Windows users can use it:





For MacOS (0.6.0 only!)

# then
   sudo apt-get update
   sudo apt-get install retroshare06


When installed, kick it up and create a new identity with 4096bit encryption key. 
Name -- publicly visible
Nickname -- used in chats etc.
Password -- used for storing encryption (longer is better in this case!)

Node name -- Location (i.e.: Metanova1, Metanova2 etc.)

After click on Settings > Network 
Public&DHT -- easiest to setup first connection

The RetroShare build and signed a certificate for you. 
So now just exchange it with your friends :)


Wednesday, March 15, 2017

Secure keys and Certificates for encrypt/decrypt and signing

GNU Privacy Guard cheatsheet


To generate a key:
 
gpg --gen-key
Please select what kind of key you want:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (sign only)
   (4) RSA (sign only)

Generally you can select the defaults. Press 1 + Add name, username, email - as needed. Don't forget on proper Passphr4se !

Export keys:

gpg --export -a -o muj-public-armored.shtf


 Import keys:

gpg --import kamarad1-pub.shtf


 In a case, you forget a passphrase, and you cannot use the key,
create a revoke certificate now! when creating keys:

gpg --gen-revoke

Administration of keys:
 
 gpg --list-keys
gpg --list-sigs
gpg --fingerprint
gpg --list-secret-keys
gpg --delete-key keyUID
gpg --delete-secrete-key 
gpg --edit-key UID


TO sign the key:
 
gpg --edit-key
 
you can use help to see some other options

check
sign


Sign a keys only in case you are 100% sure they are authentic

To list the keys in your public and secret key ring:
 


gpg --list-keys --list-secret-keys

gpg --list-secret-keys


To decrypt data, use:
 
gpg -d zasifrovany.wtf

If you have more secret keys, GPG use a correct one, or give out an error - if the correct one is not in dB. 
 You'll be prompted to enter your passphrase. Afterwards there will exist the file "zasifrovany-rozsifrovany.wtf2", and the encrypted "original," zasifrovany.wtf
-- you can choose filenames and extensions as needed

To communicate with others you must exchange PUBLIC keys.

To generate a short list of numbers that you can use via an alternative method to verify a public key, use:
 
gpg --fingerprint > fingerprint

This creates the file fingerprint with your fingerprint info.

to export a public key into file public.key:
 
gpg --export -a "User Name" > public.key

This will create a file called public.key with the ascii representation of the public key for User Name (armored)

Once a key is imported it should be validated. GnuPG uses a powerful and flexible trust model that does not require you to personally validate each key you import.
To import and validate a key, use:
 
gpg --import public.key


To encrypt data, use:
gpg -e -u "Sender User Name" -r "Receiver User Name" somefile

HOW TO enCRYPT THE FILE


gpg --encrypt ProUzivatelNam datadatadatadatadatadata




gpg -e soubor.txt


 To avoid the risk that somebody else claims to be you, it is very useful to sign everything you encrypt,

To sign file with compression:
gpg --sign bude-sifra.txt


To sign file with clear (so the rest of text is still readable):
 
gpg --clearsign data.txt


To encrypt and signed as well in once:
gpg -u odesilatel -r prijemce --sign --encrypt 2beCrypt.txt


To read a signature - you need to decrypt first:

 
HOW TO deCRYPT THE FILE


gpg --decrypt  bflmpsvznznstrakarsifra.txt

gpg -d fbaif;dgdjfhsdkhlfdf


when encrypted data are signed, you can read signature after decrypt:
 
gpg --verify
 

Or there is a possibility to use --clearsign on encrypted text.

To write signature to special file use:
gpg -b sig.sig
  
 

Sunday, March 12, 2017

AKA AKA & umami (ofiko musik video)




https://youtu.be/ksoGzg547F4






----Opaava, Opaava, Opaava ...

A to mi pripomina, ze Vojenske Zpravodajstvi (VZ), implementuje pravdepodobne Umbrell-u - k cemuz potrebuje videt veskery "normalni" provoz na siti.


Umbrella (Cisco Talos) se soustredi na vyhledavani anomalii v provozu.

Takze misto aby se rozvedka placla pres kapsu na lidech - bude spolehat na AI (Umela Inteliqence). No ovsem lepsi jak na E(e)T ...

(30.1.2017) - Ministerstvo Obrany -
Na kybernetické obraně ČR se podílí i Vojenské zpravodajství
http://www.mocr.army.cz/informacni-servis/zpravodajstvi/na-kyberneticke-obrane-cr-se-podili-i-vojenske-zpravodajstvi-130362/




(16.2.2017) - Ministerstvo Obrany -
Jde nám o kybernetickou obranu, ne o sledování soukromé komunikace
http://www.mocr.army.cz/informacni-servis/zpravodajstvi/jde-nam-o-kybernetickou-obranu--ne-o-sledovani-soukrome-komunikace-130658/


Alespon je na cislech z Fin Ur videt, jak pracuji s BigDaty a ze opravdu maji prehled o svych oveckach. Ja se uz vlastne tomu Babisovi vubec nedivim - mit takovyto bordel v ucetnictvi tak me zavrou az zcernam...


Pozn:
Vyjimecne neco v cestine - prestavka pri studiu CCNP ROUTE v7.
Kazdopadne fajny song

---

https://youtu.be/ksoGzg547F4

Useful Linux Tips & Tricks (CMDS1)

Useful Linux Tips & Tricks

(Commands & Scripts)


:: Create a bootable USB from ISO disk image ::

 Varianta I.
dd if=kali-linux-2016.2-amd64.iso of=/dev/sdb bs=512k

Varianta II.
dd if=kali-linux-2016.2-amd64.iso of=/dev/sdb bs=512k

Orwell's 1984 finally here - Vault 7 revelation

‘We are looking at “1984”’

Annie Machon, former MI5 intelligence officer, recalled that “last year, there was the biggest botnet attack ever, which took down the Internet across Western America, then across Eastern America, and them across some of the Western Europe.”
"And this botnet was built on smart devices within people’s homes. Not their computers, not their phones, but on things like smart fridges, smart computers, that sort of thing, and smart televisions, as well. It is utterly feasible that all these devices have already been hacked and they are used to spy on us.”
“We are looking at the George Orwell “1984” novel where we have screens in our flats potentially watching us. I remember back in the 1990s, the capability was there to implant software onto primitive mobile phones, onto primitive computers, so that they could indeed be switched on to record and film us and log our keystrokes,” Machon said.
“However, back in those days, there was a notion of oversight, and there was a notion of targeted surveillance, which is what we need to prevent the bad guys doing bad things to us. And it was also very labor-intensive.  Because of the massive expansion of the Internet and technology, now they can do it on the industrial scale, which is what they seem to have developed. Which means that none of us has any inherent sense of privacy, unless we take quite extreme actions to protect our privacy even in our homes,” she added.
Machon warned the new technological realities “is very dangerous for fully functioning democracy. Because once you lose the sense that you have privacy to talk, to write, to watch, to read, then suddenly you might start self-censoring yourself in the sense that you inhibit what you do. So you can’t fully inform yourself, be fully informed participatory citizen in a democracy. It is a very dangerous path to go down.”

But anyway -- for me almost all the "files" made "public" shows no files at all :D So anyway, just for the chosen ones I suspect...

Wednesday, March 8, 2017

Multi-Protocol VPN Server with SoftEther

Setup a Multi-Protocol VPN Server Using SoftEther

PostedNovember 19, 2013 249.7k views Security Networking Ubuntu

Introduction

This article explains how to install and configure a multi-protocol VPN server using the SoftEther package. We enable and configure OpenVPN and L2TP over IPSec and SSTP VPN Servers on Linux.

What is SoftEther

SoftEther VPN is one of the world's most powerful and easy-to-use multi-protocol VPN software, made by the good folks at the University of Tsukuba, Japan. It runs on Windows, Linux, Mac, FreeBSD and Solaris and is freeware and open-source. You can use SoftEther for any personal or commercial use free of charge.

Step 1: Create a Virtual Server

First, you need to create a DigitalOcean Droplet. As mentioned in SoftEther's website, SoftEther will work on almost every Linux distro with kernel v2.4 or above,; however it's recommended to choose one of these distributions: CentOS, Fedora, or Red Hat Enterprise Linux.
Personally I have tried it on Ubuntu, CentOS and Fedora, both 32 and 64 bit editions, and it has worked perfectly.

Step 2: Update your Server Software

Using the command below, update and upgrade your server software packages to the latest version:
Debian / Ubuntu:
apt-get update && apt-get upgrade
CentOS / Fedora:
yum upgrade

Step 3: Download SoftEther

You can download the latest SoftEther server package for Linux from their website:
Download SoftEther
Unfortunately, there is no way of getting the latest version through package managers (or even using a single url) at the moment. Therefore you have to browse their website using a desktop browser to download the package. There are a couple of ways of dealing with this: First, browse their website on your own computer and then depending on your server configuration (OS, x86/x64, etc.) find the link to the appropriate package then use wget to download the package to your server. Alternatively, you can use a terminal based web browser such as lynx to browse the SoftEther website and download the right package.

Here's how to do it using lynx:

First install lynx on your server:
Debian / Ubuntu:
apt-get install lynx -y
CentOS / Fedora:
yum install lynx -y
Now using the command below browse the SoftEther download webpage:
lynx http://www.softether-download.com/files/softether/
Browsing SoftEther Files List Using Lynx
This page contains all versions of the SoftEther available. Choose which version you want (in this tutorial we use v2.00-9387-rtm-2013.09.16) and then press Enter to go to the link. Now choose Linux and in the next page choose SoftEther VPN Server. Depending on your server hardware architecture, choose a package; the 32bit - Intel x86 and 64bit - Intel x64 or AMD64 work for DigitalOcean 32bit or 64bit droplets. Finally download the tar file from the next page by pressing the "D" key on the link, and choose "Save to disk" when asked by Lynx. After the file is saved, we can press "Q" to quit Lynx and move on with the installation.

Step 4: Install and Configure SoftEther

Now we have to extract the package we received from the SoftEther download page and compile it. The package used in this tutorial is named softether-vpnserver-v2.00-9387-rtm-2013.09.16-linux-x86-32bit.tar.gz so we will extract it using the command below:
 tar xzvf softether-vpnserver-v2.00-9387-rtm-2013.09.16-linux-x86-32bit.tar.gz
After extracting it, a directory named vpnserver will be created in the working folder. In order to compile SoftEther, the following tools and packages must be installed on your server:
make, gccbinutils (gcc), libc (glibc), zlib, openssl, readline, and ncurses
Make sure these are installed. You can install all the packages necessary to build SoftEther using the command below:
Debian / Ubuntu:
apt-get install build-essential -y
CentOS / Fedora:
yum groupinstall "Development Tools"
Note: On Fedora, I have found that the gcc package doesn't get installed using the command above so you have to install it manually using yum install gcc.
Now that we have all the necessary packages installed, we can compile SoftEther using the following command:
First "cd" into vpnserver directory:
cd vpnserver
And now run "make" to compile SoftEther into an executable file:
make
SoftEther License Agreement
SoftEther will ask you to read and agree with its License Agreement. Select 1 to read the agreement, again to confirm read, and finally to agree to the License Agreement.
SoftEther is now compiled and made into executable files (vpnserver and vpncmd). If the process fails, check if you have all of the requirement packages installed.
Now that SoftEther is compiled we can move the vpnserver directory to someplace else, here we move it to usr/local:
cd ..
mv vpnserver /usr/local
cd /usr/local/vpnserver/
And then change the files permission in order to protect them:
chmod 600 *
chmod 700 vpnserver
chmod 700 vpncmd
If you like SoftEther to start as a service on startup create a file named vpnserver in /etc/init.d directory and change it to the following:
First create and open the file using vi or nano:
vi /etc/init.d/vpnserver
And paste the following into the file:
#!/bin/sh
# chkconfig: 2345 99 01
# description: SoftEther VPN Server
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
Finally save and close the file by pressing esc and typing :wq to close vim.
We have to make a directory at /var/lock/subsys if one does not exist:
mkdir /var/lock/subsys
Now change the permission for the startup script and start vpnserver using command below:
chmod 755 /etc/init.d/vpnserver && /etc/init.d/vpnserver start
Use the command below make it to run at startup:
Debian / Ubuntu:
update-rc.d vpnserver defaults
CentOS / Fedora:
chkconfig --add vpnserver 
SoftEther VPN Server is now installed and configured to run at startup. Finally, we have to check if the VPN server is working:
cd /usr/local/vpnserver
./vpncmd
Now press 3 to choose Use of VPN Tools and then type:
check
If all of the checks pass, then your server is ready to be a SoftEther VPN server and you can move on to the next step. Type "exit" to exit VPN Tools.
There are two ways to configure SoftEther VPN server: you can use the Windows based server manager to manage and configure any number of SoftEther VPN servers from remotely; or use the built-in vpncmd tool to configure your servers.
You can download SoftEther Server Manager for Windows using their website and do the configuration using the GUI that it provides, which is a preferable way if you are a Windows user.
Here we use vpncmd to configure our VPN server.

Step 5: Change Admin Password

Now that you have SoftEther VPN server installed, you have to assign an administrator password in order to use with SoftEther. You can do this using vpncmd which is SoftEther's command line based administration tool:
./vpncmd
Press 1 to select "Management of VPN Server or VPN Bridge", then press Enter without typing anything to connect to the localhost server, and again press Enter without inputting anything to connect to server by server admin mode.
Then use command below to change admin password:
ServerPasswordSet

Step 6: Create A Virtual Hub

To use SoftEther we must first create a Virtual Hub. Here as an example we create a hub named VPN, in order to do that enter command below in the vpncmd tool:
HubCreate VPN
Next you will be asked to enter an administrator password for the hub. This password will be used whenever you are not logged in as server admin mode, and you want to manage that specific hub.
Now select the Virtual Hub you created using this command:
Hub VPN

Step 7: Enable SecureNAT

There are two ways of connecting your hubs to the server network: using a Local Bridge connection or using the SecureNAT function.
You can use each one separately, but using these two together will cause problems.
Here we use SecureNAT, which is very easy to setup and works pretty well in most situations. You could also use Local Bridge, but then you have to install and configure a DHCP Server too.
SecureNAT is a combination of Virtual NAT and DHCP Server function. You can enable SecureNAT using the command below:
SecureNatEnable

Step 8: Create and Manage Users

Now we have to create users for our Virtual Hub to use the VPN. We can create users for our Virtual Hub using the command UserCreate and view the list of current users by UserList. Users can be added to groups and can even have different types of authentication modes (including: Password, Certificate, RADIUS, NTLM, etc.).
By using command UserCreate we create a user named "test":
UserCreate test
The default type of authentication is Password but we can change it to a different type using commands below:
UserNTLMSet for NT Domain Authentication
UserPasswordSet for Password Authentication
UserAnonymousSet for Anonymous Authentication
UserRadiusSet for RADIUS Authentication
UserCertSet for Individual Certificate Authentication
UserSignedSet for Signed Certificate Authentication
In this tutorial we use Password as the user authentication mode for our test user, so using this command set a password for user test:
UserPasswordSet test

Step 9: Setup L2TP/IPSec

To enable L2TP/IPsec VPN server you can use the command below:
IPsecEnable
After entering this command, you will be asked to configure the L2TP server functions:
Enable L2TP over IPsec Server Function: Choose yes to enable L2TP VPN over IPSec with pre-shared key encryption. Now you can make VPN connections to this server using iPhone, Android, Windows, and Mac OS X devices.
Enable Raw L2TP Server Function: This will enable L2TP VPN for clients with no IPSec encryption.
Enable EtherIP / L2TPv3 over IPsec Server Function: Routers which are compatible with EtherIP / L2TPv3 over IPsec can connect to this server by enabling this function.
Pre Shared Key for IPsec: Enter a pre-shared key to use with L2TP VPN.
Default Virtual HUB in a case of omitting the HUB on the Username: Users must specify the Virtual Hub they are trying to connect to by using Username@TargetHubName as their username when connecting. This option specifies which Virtual Hub to be used if the user does not provide such information. In our case enter VPN.

Step 10: Setup SSTP/OpenVPN

The SoftEther can clone the functions of Microsoft SSTP VPN Server and OpenVPN Server. But before we enable these we have to generate a self-signed SSL certificate for our server. You can use openssl or SoftEther's own command to generate a SSL certificate.
Here we use SoftEther's ServerCertRegenerate command to generate and register a self-signed SSL certificate for our server. The argument passed to command is CN (Common Name), and must be set to your host name (FQDN) or IP address:
ServerCertRegenerate [CN]
Note 1: SoftEther also comes with a built-in Dynamic DNS function, which can assign a unique and permanent hostname for your server. You can use the hostname assigned by this function for creating a SSL Certificate and connecting to your server.
Note 2: If you already have a SSL certificate or you have created one using openssl, it can be added to the server using the command ServerCertSet.
Now that we have created the certificate, we have to download the certificate to our clients and add them as trusted. Using the command below, we save the server certificate into a file named cert.cer:
ServerCertGet ~/cert.cer
Now you can download the certificate to your client using FileZilla or any other SFTP Client.
To make the certificate trusted in Windows, you have to install it in the Trusted Root Certification Authorities store. Here's an article explaining how (read the To install a certificate chain part):
Installing a Certificate Chain
Now that we have created and registered a SSL Certificate for our server, we can enable SSTP function with this command:
SstpEnable yes
And to enable OpenVPN:
OpenVpnEnable yes /PORTS:1194
Note: OpenVPN's default port is 1194, but you can change it to any port you want by changing the /PORTS:1194 part of the command above to your desired port or ports (yes it supports multiple ports).
After you enabled OpenVPN, you can download a sample configuration file for OpenVPN client. Here we create a sample OpenVPN configuration file and save it to myopenvpnconfig.zip:
OpenVpnMakeConfig ~/my_openvpn_config.zip
Then you can download it using any SFTP client such as FileZilla and apply it to your OpenVPN clients.
SoftEther also provides a dedicated VPN Client software for both Windows and Linux. It supports a SoftEther specific protocol called Ethernet over HTTPS or SSL-VPN which is very powerful. It uses HTTPS protocol and port 443 in order to establish a VPN tunnel, and because this port is well-known, almost all firewalls, proxy servers and NATs can pass the packet. In order to use SSL-VPN protocol, you must download and install SoftEther VPN Client, which can be obtained from their website.

Step 11: Connecting to SoftEther VPN Server (Client Configuration)

Since SoftEther is a multi-protocol VPN server, there are many ways to connect to it as a client. You can choose any protocol to establish a secure connection to your server, including L2TP, SSTP, OpenVPN and an exclusive to SoftEther protocol named SSL-VPN.
Depending on the client operating system and configurations, you could use any of the mentioned protocols. However, I prefer to use SSL-VPN since it's both secure and fast, and also as mentioned before since it uses a common and well-known port (443 or https-port), it can penetrate most of the firewalls.
Here we use SoftEther's own VPN client software to connect to our server:
First download the SoftEther VPN Client for Linux from SoftEther's website. We can download it using a lynx browser. Enter this command to open SoftEther's download page:
lynx http://www.softether-download.com/files/softether/
Then just as you did when downloading the Server software, select the latest version (Here we used v2.00-9387-rtm-2013.09.16). Now choose Linux and in the next page choose SoftEther VPN Client. Now depending on your system's hardware architecture, choose a package (The 32bit - Intel x86 and 64bit - Intel x64 or AMD64 works for DigitalOcean 32bit or 64bit droplets). Finally download the tar file from the next page by pressing the "D" key on the link, and choose Save to disk when asked by Lynx. After the file is saved, press "Q" to quit Lynx.
Extract the tar file you just downloaded using this command:
tar xzvf softether-vpnclient-v2.00-9387-rtm-2013.09.16-linux-x86-32bit.tar.gz
Note: Change softether-vpnclient-v2.00-9387-rtm-2013.09.16-linux-x86-32bit.tar.gz to your downloaded file's name.
Now just as we did with the server, we have to compile and make vpnclient an executable file by running these commands (make sure you have the development tools mentioned in Step 4 installed on client):
cd vpnclient
make
Enter 1 three times when asked to read and accept the License Agreement, and then move the files to another directory and change permissions:
cd ..
mv vpnclient /usr/local
cd /usr/local/vpnclient/
chmod 600 *
chmod 700 vpnclient
chmod 700 vpncmd
Then start the VPN client service using this command:
./vpnclient start
To configure our client, we're going to use vpncmd. While you're in the vpnclient directory enter this command to run vpncmd tool:
./vpncmd
Choose 2 to enter Management of VPN Client mode, and then press enter to connect to and manage the local VPN client you just installed.
SoftEther uses Virtual Adapters to establish a connection to our VPN server, using this command create a Virtual Adapter named myadapter:
NicCreate myadapter
Now using this command, create a new VPN connection named myconnection:
AccountCreate myconnection
Then enter your SoftEther VPN server's IP and Port number. The port number could be any port that you have set as listening on your server. By default, SoftEther listens on these four ports: 443, 992, 1194, 5555. Here as an example where we use port 443:
Destination VPN Server Host Name and Port Number: [VPN Server IP Address]:443
Note: Instead of an IP Address, you could also enter you server's fully qualified domain name (FQDN).
Now enter the name of the Virtual Hub you're trying to connect to on your server. In our case it is named VPN:
Destination Virtual Hub Name: VPN
Then enter the username of a user you created in your server. We created a user called test:
Connecting User Name: test
And finally enter the name of the Virtual Hub you just created:
Used Virtual Network Adapter Name: myadapter
Now our VPN connection has been created and it's ready to be connected. One last step is to change the Authentication mode to Password since that's how we configured our user's authentication mode in the server:
AccountPasswordSet myconnection
When asked for, enter standard as password authentication method:
Specify standard or radius: standard
Finally we can connect our connection-- use this command to do that:
AccountConnect myconnection
You can see the connection status using this command:
AccountStatusGet myconnection
Note: In order to make your connection to the server more secure and prevent man-in-the-middle attacks, it's best to use a SSL certificate to identify your server. This can be done easily using SoftEther. To do that, first you must download the cert file to your client as explained in Step 10 and then using CertAdd add it to your client's trusted certificates. Then, using command AccountServerCertEnable enable certificate verification for your VPN connection.

Finishing Up

In this article, we went through the process of setting up a SoftEther VPN Server using vpncmd which is a command line administration utility provided by SoftEther. All the things done here could also be done using SoftEther Server Manager for Windows, and it's even easier to setup a SoftEther VPN Server using that tool. So I recommended you to use it if you have a Windows machine.
That's it. We have successfully installed and configured a multi-protocol VPN server using SoftEther. Now clients can connect to our server using L2TP, IPSec, SSTP, OpenVPN, etc.

Default route sink-hole

"DIY" - how-to mitigate DDoS with default route

As many providers today are offering DDoS protection for small or larger gold mine -- i was experimenting recently with a cheap "DIY" solution. Its available in case your site is multihoming or you are using cloud resources.

At least 2 IP addresses are needed, ideally from completely different subnet. Keep one of the IP addresses hidden from public / don't bind it to DNS, do not use it for load balancing and other stuff.

When the publicly available IP gets under attack -- you can use a default route that is pointing to interface. 

 Easier variant how to get rid of an attacker is via a null route also known as a black-hole route. You will still receive a malicious traffic, but nothing is returning to the owner ;) 
Keep in mind that if you're using this approach, you don't want to alert malicious users that you're blocking their traffic.

Cisco CLI:

Router(config)# ip route x.x.x.x 255.255.255.0 null0

 You could configure the following on the null0 interface:
 
Router(config)# int null0
Router(config-if)# no ip unreachables

Router(config)#  ip route 0.0.0.0 0.0.0.0 eth0 

Linux commands:
In our example we are receiving unwanted telnet login attempts from 189.75.74.192

 root@server:~# netstat -na | grep :22
 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
 tcp 0 0 192.168.0.197:22 189.75.74.192:57776 ESTABLISHED

To add the null route we will use the ip command
 root@server:~# ip route add blackhole 189.75.74.192/32

To verify the route is in place will will use ip route show
 root@server:~# ip route show
 default via 192.168.0.1 dev eth0 metric 100
 blackhole 189.75.74.192

After a little while the established ssh connections will time out and all subsequent connections from the blocked ip will receive the following.
 baduser@attacker:~$ ssh 192.168.0.197
 ssh: connect to host 192.168.0.197 port 22: No route to host

Removing a null route

After the attack has subsided or in case you add the wrong ip you may want to remove the blackhole route. To do so we will use the ip command again.
 root@server:~# ip route del 189.75.74.192
 root@server:~# ip route show
 default via 192.168.0.1 dev eth0 metric 100

and when you shut the interface down / disconnect it -- the DDoS traffic will go there to a hell roads ... without a nobless way to tell it to the attackers.

With IPv6 addressing and cloud VPS resources this is even easier and automation scripts can be used based on traffic weight.


DNSSEC and 2048-bit RSA

DNSSEC pushing for 2048-bit RSA encryption


One of the most interesting and important changes to the internet’s domain name system (DNS) has been the introduction of the DNS Security Extensions (DNSSEC). These protocol extensions are designed to provide origin authentication for DNS data. In other words, when DNS data is digitally signed using DNSSEC, authenticity can be validated and any modifications detected.
A major milestone was achieved in mid-2010 when Verisign and the Internet Corporation for Assigned Names and Numbers (ICANN), in cooperation with the U.S. Department of Commerce, successfully deployed DNSSEC for the root zone. Following that point in time, it became possible for DNS resolvers and applications to validate signed DNS records using a single root zone trust anchor.
DNSSEC works by forming a chain-of-trust between the root (i.e., the aforementioned trust anchor) and a leaf node. If every node between the root and the leaf is properly signed, the leaf data is validated. However, as is generally the case with digital (and even physical) security, the chain is only as strong as its weakest link.
Resolving a Query with DNSSEC
To strengthen the chain at the top of the DNS, Verisign is working to increase the strength of the root zone’s Zone Signing Key (ZSK), which is currently 1024-bit RSA, and will sign the root zone with 2048-bit RSA keys beginning Oct. 1, 2016.

Personally using 4096-bit RSA keys and flowing hashing. Not so easy to break through -- usually vigilantes are looking for easy marks with quick outcome.

You can test your network here:
http://keysizetest.verisignlabs.com/
 -- web page is designed to test your network's ability to resolve domain names that have been signed with "large" DNSSEC keys

 


ZSK-length-change-blog-diagram


Original link:
https://blog.verisign.com/security/increasing-the-strength-of-the-zone-signing-key-for-the-root-zone/