wiki'd

by JoKeru

Linux Users

[cc lang='bash']
# show defaults
\$ useradd -D
# add temp user with pass temp
\$ useradd --comment 'Temp User' --create-home --gid 100 --uid 10000 --password eCGwS26XXJXak --shell /bin/bash temp

# lock the password
\$ passwd --lock temp
# unlock the password
\$ passwd --unlock temp

# remove user and home
\$ userdel --remove temp
[/cc]

Shipping Logs with Lumberjack (to LogStash)

On the centralized log server:
[cc lang='bash']
# create ssl certificate required by lumberjack
\$ openssl req -x509 -newkey rsa:1024 -keyout /etc/logstash/logstash.key -out /etc/logstash/logstash.pub -nodes -days 3650

# build lumberjack package
\$ apt-get install rubygems -y
\$ gem install fpm
\$ export PATH=\$PATH:/var/lib/gems/1 …

Network Speed with NetCat and DD

Server 1
[cc lang='bash']
\$ nc -vnlp 2222 > /dev/null
listening on [any] 2222 ...
connect to [10.20.30.40] from (UNKNOWN) [50.60.70.80] 46726
[/cc]

Server 2
[cc lang='bash']
\$ dd if=/dev/zero bs=10240K count=100 | nc -nv 10.20.30.40 2222
(UNKNOWN) [10 …

Setup iSCSI Initiator

[cc lang='bash']
\$ yum install iscsi-initiator-utils -y
\$ chkconfig netfs on
\$ chkconfig iscsi on
\$ chkconfig iscsid on
\$ echo "InitiatorName=iqn.2013-05.ro.jokeru:"`hostname` > /etc/iscsi/initiatorname.iscsi
\$ service iscsid start
\$ service iscsi start

\$ iscsiadm -m discovery -t sendtargets -p 192.168.1.1
\$ iscsiadm -m node -T iqn.1992-08.com …

Find the package that contains a file

[cc lang='bash']
\$ apt-get install apt-file
\$ apt-file update
\$ apt-file search mysqldump
bacula-common: /usr/share/doc/bacula-common/examples/database/bacula-sqlite_2_mysqldump.sh
mysql-client-5.1: /usr/bin/mysqldump
mysql-client-5.1: /usr/bin/mysqldumpslow
mysql-client-5.1: /usr/share/man/man1/mysqldump.1.gz
mysql-client-5.1: /usr/share/man/man1/mysqldumpslow.1.gz
[/cc]

Generate CSR with OpenSSL

[cc lang='bash']
\$ vi ssl.cnf
\$ openssl req -new -config ssl.cnf -out jokeru.ro.csr
[/cc]

ssl.cnf
[cc lang='bash']
[ req ]
default_keyfile = jokeru.ro.key
default_bits = 2048
encrypt_key = no
default_md = rsa
distinguished_name = req_distinguished_name
req_extensions = req_extensions # Extension for subjectAltName
prompt = no

[ req_distinguished_name ]
countryName = RO
stateOrProvinceName = Bucharest
localityName = Bucharest
organizationName …

ext3 and ext4 recover deleted files with extundelete

[cc lang='bash']
* selinux disabled

\$ yum install e2fsprogs-devel e2fsprogs e2fsprogs-libs -y
\$ wget http://gnutoolbox.com/download/linux/hdd/extundelete-0.2.0.tar
\$ tar -xf extundelete-0.2.0.tar
\$ cd extundelete-0.2.0
\$ ./configure
\$ make && make install
\$ cd /tmp
\$ extundelete /dev/sdc1 --restore-all
[/cc]

details: http://extundelete.sourceforge.net/

VMware tools install on Debian

[cc lang='bash']
\$ apt-get update
\$ apt-get install make gcc linux-headers-\$(uname -r)

\$ mount /dev/cdrom /media/cdrom0
\$ cd /media/cdrom0/
\$ cp VMwareTools-9.0.0-782409.tar.gz /root/
\$ cd /root/
\$ tar -xzf VMwareTools-9.0.0-782409.tar.gz
\$ cd vmware-tools-distrib/
\$ ./vmware-install.pl
\$ cd /root/
\$ rm -rf VMwareTools-9.0.0-782409.tar.gz vmware-tools-distrib …

Debug Slow Service Response

[cc lang='bash']
# check speed, duplex, driver
\$ ethtool eth0
\$ lspci | grep -i eth
\$ ethtool -i eth0
\$ modinfo e1000e

# check irq balance to all cores
\$ cat /proc/interrupts | grep 'CPU\|eth0'

# check packet rate
\$ sar -n DEV 1

# check packet drop - low layers
\$ ifconfig eth0 | grep -i drop
\$ ethtool -S eth0 …

Stress Test with SPIZD

Stress Probing Invasive Zap Destructor - it's a command-line stress test tool used to determine how many simultaneous (concurrent) connections servers can handle. Protocols: http, pop3, pop3s, imap, imaps, smtp, smtps, ssh, radius.
[cc lang='bash']
\$ apt-get install unzip default-jre -y
\$ wget http://sourceforge.net/projects/spizd/files/latest/download -O …