====== Install Script ====== For a new install, I built a bash script to tweak a new system out of the box for how I like things: - Builds and installs a color prompt (user and root) - Updates sources.list for a standard Debian Testing install (optional) - Downloads and installs my custom .vimrc file - Downloads and installs my gman1.vim colorscheme - Download here: [[https://greg.kedrovsky.net/content/greg_files/configureMe.sh|configureMe.sh]] ====== .bashrc ====== Old Kali PS1 color prompts (which are pretty cool). **root:** PS1='\[\e[0;36m\]\t \[\e[0;33m\][\[\e[0;31m\]\u\[\e[0;33m\]] \[\e[0;32m\]\h \[\e[0;31m\][\w]\e[0m\]\$\[\e[m\]\[\e[0;32m\] ' **user:** PS1='\[\e]0;\u@\h: \w\a\]\[\e[0;36m\]\t \[\e[0;33m\][\[\e[0;37m\]\u\[\e[0;33m\]] \[\e[0;32m\]\h \[\e[0;31m\][\w]\e[0m\]\$\[\e[m\]\[\e[0;37m\] ' ===== user ===== ## Add additional dirs to my path export PATH="$PATH:$HOME" # add home dir to path # export PATH="$PATH:$HOME/bin" # I put poweroff, reboot, ifconfig here ## User-defined aliases alias ls='ls --color --group-directories-first' PS1='\[\e[1;33m\]' # set color (yellow) PS1+='[' # opening bracket PS1+='\[\e[1;34m\]' # set color (blue) PS1+='\u' # user PS1+='\[\e[1;31m\]' # set color (red) PS1+='@' # separator PS1+='\[\e[1;33m\]' # set color (yellow) PS1+='\h' # host PS1+='\[\e[1;37m\]' # set color (white) PS1+=':' PS1+='\[\e[1;36m\]' # set color (cyan) PS1+='\w' # working directory PS1+='\[\e[1;33m\]' # set color (yellow) PS1+=']' # closing bracket PS1+='\[\e[0m\]' # end ch (text reset) PS1+='$ ' # $ for normal user export PS1 ## Reference: # Codes: # https://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html # Colors: # https://unix.stackexchange.com/questions/124407/what-color-codes-can-i-use-in-my-ps1-prompt#124408 ===== root ===== # GAK root .bashrc ## User-defined aliases alias ls='ls --color --group-directories-first' PS1='\[\e[1;33m\]' # set color (yellow) PS1+='[' # opening bracket PS1+='\[\e[1;31m\]' # set color (red) PS1+='\u' # user PS1+='\[\e[1;37m\]' # set color (white) PS1+='@' # separator PS1+='\[\e[1;33m\]' # set color (yellow) PS1+='\h' # host PS1+='\[\e[1;37m\]' # set color (white) PS1+=':' # separator PS1+='\[\e[1;36m\]' # set color (cyan) PS1+='\w' # working directory PS1+='\[\e[1;33m\]' # set color (yellow) PS1+=']' # closing bracket PS1+='\[\e[0m\]' # end ch (text reset) PS1+='# ' # hash (#) for root export PS1 ## Reference: # Codes: # https://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html # Colors: # https://unix.stackexchange.com/questions/124407/what-color-codes-can-i-use-in-my-ps1-prompt#124408 ---- ====== Boot to CLI ====== In Debian: systemctl set-default multi-user.target ---- ====== sources.list ====== #-------------------------------------------------------------------# # OFFICIAL DEBIAN REPOS # #-------------------------------------------------------------------# deb http://deb.debian.org/debian/ testing main contrib non-free deb-src http://deb.debian.org/debian/ testing main contrib non-free deb http://deb.debian.org/debian/ testing-updates main contrib non-free deb-src http://deb.debian.org/debian/ testing-updates main contrib non-free deb http://deb.debian.org/debian-security testing-security main deb-src http://deb.debian.org/debian-security testing-security main ---- ====== .vimrc ====== "" Greg's .vimrc " Ideas: http://vim.wikia.com/wiki/Example_vimrc " Enable syntax highlighting syntax on " Better command-line completion set wildmenu " Show partial commands in the last line of the screen set showcmd " Display line numbers on the left set number " Enable smart handling of the tab key set smarttab " Use spaces instead of tabs set expandtab " 1 tab == 4 spaces set shiftwidth=4 set tabstop=4 " Change the color scheme " install color scheme in /usr/share/vim/vim[##]/colors/ set t_Co=256 colorscheme gman1 " Disable autocomment character insertion autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o " End ---- ====== vim colorscheme ====== Create a text file named gman1.vim (for example) and paste in the text below. * Copy your colorscheme file (gman1.vim) into: /usr/share/vim/vim[##]/colors/ * Set the colorescheme in your .vimrc file (see above) " Vim colorscheme -- gman1 " " Created specifically for Python " Based on PyChimp by Pratheek " " This colorscheme is specifically created, to work in a translucent " background provided by terminal and supports 256 color terminals " Tip -- add in your ~/.vimrc to utilize the theme well. let g:colors_name = "gman1" " The Basic (Normal) Text Style hi Normal ctermfg=253 ctermbg=NONE cterm=NONE " All the Python related stuff hi Number ctermfg=141 ctermbg=NONE cterm=NONE hi Float ctermfg=141 ctermbg=NONE cterm=NONE hi Statement ctermfg=226 ctermbg=NONE cterm=NONE hi Function ctermfg=35 ctermbg=NONE cterm=NONE hi Conditional ctermfg=208 ctermbg=NONE cterm=NONE hi Operator ctermfg=226 ctermbg=NONE cterm=NONE hi Todo ctermfg=253 ctermbg=NONE cterm=bold hi Comment ctermfg=69 ctermbg=NONE cterm=NONE hi Special ctermfg=81 ctermbg=NONE cterm=NONE hi String ctermfg=169 ctermbg=NONE cterm=NONE hi Include ctermfg=118 ctermbg=NONE cterm=bold hi Constant ctermfg=178 ctermbg=NONE cterm=bold hi Error ctermfg=88 ctermbg=172 cterm=bold hi PreProc ctermfg=81 ctermbg=NONE cterm=NONE hi Boolean ctermfg=38 ctermbg=NONE cterm=bold hi Character ctermfg=142 ctermbg=NONE cterm=NONE "Vim Stuff hi Visual ctermfg=253 ctermbg=235 cterm=NONE hi VertSplit ctermfg=232 ctermbg=244 cterm=NONE hi ErrorMsg ctermfg=88 ctermbg=172 cterm=bold hi MatchParen ctermfg=16 ctermbg=215 cterm=bold hi Folded ctermfg=67 ctermbg=16 cterm=bold hi FoldColumn ctermfg=67 ctermbg=16 cterm=NONE hi LineNr ctermfg=102 ctermbg=NONE cterm=NONE hi NonText ctermfg=58 ctermbg=NONE cterm=NONE hi Pmenu ctermfg=81 ctermbg=16 cterm=NONE hi PmenuSel ctermfg=202 ctermbg=16 cterm=NONE hi PmenuSbar ctermfg=81 ctermbg=16 cterm=NONE hi PmenuThumb ctermfg=81 ctermbg=16 cterm=NONE hi Search ctermfg=253 ctermbg=66 cterm=NONE hi IncSearch ctermfg=253 ctermbg=66 cterm=NONE hi TabLine ctermfg=3 ctermbg=NONE cterm=NONE hi TabLineSel ctermfg=14 ctermbg=NONE cterm=bold hi TabLineFill ctermfg=46 ctermbg=NONE cterm=NONE ---- ====== Reinstall GRUB ====== I triple boot O/Ss... so once in a while one will update and over-write my MBR. To get the correct GRUB into the MBR, boot into the preferred O/S and run (as root): # grub-install /dev/sda ## Assuming sda contains the MBR Then: # update-grub Done. ---- ====== fstab NTFS ====== Options and setup for NTFS partition (sharing / data partition) in Linux. You will likely need to do run the ''id'' command from the command line to find your uid and gid. UUID=[use blkid to find it] /mnt/data ntfs-3g user,big_write,uid=1000,gid=1000,dmask=0022,fmask=0011 0 0 ---- ====== Networking ====== **See IP Info** (pick one, they basically do the same thing): ifconfig -a # Debian net-tools pkg ls /sys/class/net # ls interface names ip a ip a show ip a show eth0 ===== config: interfaces ===== You can set up as many network configs for as many interfaces as you want. Just set them up, comment them out, and when you want to use one remove the # and bring it up. * As root, edit: ''/etc/network/interfaces''. * Note: Keep the loopback and everything else your *nix install put in there... you have been warned. * The following example assumes eth0 for wired network and wlan0 for wireless. # +-------------------------+ # # | Wired Network Interface | # # +-------------------------+ # # Comment out these lines if you want to manually bring up your network allow-hotplug eth0 # bring up the interface on a hotplug event like plugging in a usb cable auto eth0 # bring up the interface on boot ## The following w/o auto or allow-hotplug requires manual up. ## [1] STATIC (replace subnet with your own): #iface eth0 inet static # address 192.168.0.100 # netmask 255.255.255.0 # network 192.168.0.0 # gateway 192.168.0.1 # broadcast 192.168.0.255 ## [2] DHCP (one or the other): #iface eth0 inet dhcp # IPv4 #iface eth0 inet6 auto # IPv6 # +----------------------------+ # # | Wireless Network Interface | # # +----------------------------+ # # Comment out these lines if you want to manually bring up your network allow-hotplug wlan0 auto wlan0 ## The following w/o auto or allow-hotplug requires manual up. ## [1] STATIC (replace subnet with your own; either WEP or WPA/WPA2): # WEP static #iface wlan0 inet static # address 10.0.0.10 # netmask 255.255.255.0 # network 10.0.0.0 # gateway 10.0.0.1 # broadcast 10.0.0.255 # wireless-essid SSID_of_Router # wireless-key Not_the_Passphrase_TheKEY ## WPA/WPA2 static #iface wlan0 inet static # address 10.0.0.10 # netmask 255.255.255.0 # network 10.0.0.0 # gateway 10.0.0.1 # broadcast 10.0.0.255 # wpa-ssid SSID_of_Router # wpa-psk PassPhrase ## [2] DHCP (either WEP or WPA/WPA2): ## WEP dhcp #iface wlan0 inet dhcp # wireless-essid SSID_of_Router # wireless-key Not_the_Passphrase_TheKEY ## WPA/WPA2 dhcp #iface wlan0 inet dhcp # wpa-ssid SSID_of_Router # wpa-psk PassPhrase ===== manual up/down ===== Manually bringing your network up and down ([[https://www.cyberciti.biz/faq/linux-restart-network-interface/|nixCraft]] has a good explanation): * Assuming eth0 (change for whichever interface you want to manipulate). **Generic Method:** ifdown eth0 # Turn off eth0 ifup eth0 # Turn on eth0 **Debian Method** (as root): /etc/init.d/networking restart # Restarts network interfaces, or stop/start... /etc/init.d/networking stop # Stops network interfaces /etc/init.d/networking start # Starts network interfaces systemctl restart networking # For those with lovely systemd systemctl status network # See status of network systemd ===== ifupdown vs. ifconfig ===== **Debian, overview:** * ''ifup'' and ''ifdown'' control interfaces that are listed in ''/etc/network/interfaces''. * ''ifconfig'' directly controls network interfaces (much like the newer ''ip'' command) **The** ''ifupdown'' **package:** high-level network configuration * The ''ifup'' and ''ifdown'' commands may be used to configure or deconfigure network interfaces based on interface definitions in the file ''/etc/network/interfaces''. * Example: bring up the network with ''ifup eth0'' based on eth0 configuration in ''/etc/network/interfaces''. * ''ifupdown'' will wrap ''ifconfig'' with the network configuration files (i.e., ''ifdown'' or ''ifup'' will execute ''ifconfig down'' or ''ifconfig up'' inside it). That means: * ''ifup eth0'' will fetch the interface config file and bring up the interface with the correct IP address, mask, routes etc. * ''ifconfig eth0'' up would just start the interface **//with no IP//**, etc. (important for sniffing in monitor mode because you don't want an IP address, etc.; you want an open broadcase). **The** ''ifconfig'' **command:** a low-level network command (and deprecated, sadly) * An ''ifconfig up eth0'' activates eth0 but does not setup IP addresses, etc. * An ''ifup eth0'' sets up IP addresses and other options based on the interface's configuration in ''/etc/network/interfaces''. ===== ip command ===== **Usage of the** ''ip'' **command:** * If your distro did not install ifconfig, you can install it in Debian with ''apt install net-tools''. * Or you can use the horridly ugly syntax for ''ip'' (complex and hard-to-understand help can be found [[https://www.howtogeek.com/657911/how-to-use-the-ip-command-on-linux/|here]] or an easier-to-understand explanation [[https://www.tecmint.com/ip-command-examples/|here]]). * From the following example you will need to replace the IP and the interface with your own. **[1] Assign an IP address to a specific interface:** ip addr add 192.168.0.100/24 dev eth0 **[2] Bring up the interface link** (do NOT skip this step or you will get a "Network is unreachable" error!): ip link set eth0 up **[3] Bring up the interface link:** ip route add default via 192.168.0.1 **[1-3] All in one place... looks like this:** ip addr add 192.168.0.100/24 dev eth0 ip link set eth0 up ip route add default via 192.168.0.1 **Note on Persistence:** This will only set up your network for your current work session. You'll lose it on reboot. * ''ip'' (like the old net-tools ''ifconfig'' stuff) interacts with ''/etc/network/interfaces'', so put all your network configuration information there and just up/down your network with these commands: /etc/init.d/networking restart # Restarts network interfaces, or stop/start... /etc/init.d/networking stop # Stops network interfaces /etc/init.d/networking start # Starts network interfaces ---- ======= Kali: root ======= Kali made the spectacular decision to [[https://www.kali.org/news/kali-default-non-root-user/|drop the default root policy]] and then not even allow you to configure a root password (i.e., log in as root) when you install. * When you install Kali Linux, you’ll be asked to create non-root user that will have admin privileges. Tools and commands that require root access will be run with sudo. * So you have to type sudu... sudo... sudo... sudo... (really, guys??). To configure password-less root rights for your normal user (but you still have no access to applications that are only in root's PATH): sudo apt install kali-grant-root sudo dpkg-reconfigure kali-grant-root Better: Unlock the root login. Just give root a password, log out, then log in as root: sudo su - # do this as a normal user, give your password; you become root passwd # add a password to root's account; log out, log in, shiny Ah... happiness again in the land of hacker [[https://www.kansascityzoo.org/ouranimals/list-of-animals/king-penguin/|penguins]]... ---- ======= Edit DokuWiki Sidebar ======= Go here: [[sidebar|Sidebar]]