Difference between revisions of "User:Cyrusty/Useful Commands"
From Organic Design wiki
Line 199: | Line 199: | ||
− | == | + | == Networking == |
<source lang="bash"> | <source lang="bash"> | ||
− | + | ifconfig # Shows network info IP/MAC address | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | sudo netdiscover # Shows who's on the network and identifies the ip address of each connection | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | sudo lsof -i # Lists the open ports and the process that owns them (to see which process is bound to port use :PORTNUMBER) | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | sudo netstat # Seeing what might be exposed to the network</source> | |
+ | |||
+ | <source lang="bash"> | ||
+ | sudo netstat -tulpn # t=tcp, u=udp ports, l=listening ports, p=processes, n=numerical | ||
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | sudo macchanger -s enp4s0/eth0/wps/ # To see mac addresses | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | sudo macchanger -r enp4s0 # Changes the current mac address to a new one | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | ssh -NCD 1080 user@ip # Proxy network traffic over port 1080 (edit below settings on firefox to port traffic correctly) | |
</source> | </source> | ||
+ | Manual Proxy Configuration | ||
+ | Socks Host: localhost | ||
+ | port: 1080 | ||
− | == | + | == SSH == |
<source lang="bash"> | <source lang="bash"> | ||
− | + | ssh-keygen -t # creates a key in .ssh | |
+ | </source> | ||
+ | |||
+ | <source lang="bash"> | ||
+ | sudo nano /etc/ssh/sshd_config # change ssh parameters (key logging/password authentication) | ||
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | sudo service ssh restart # saves ssh modifications | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | ssh-copy-id USER@IP # saves the pub key to be known as an authenticated key | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | scp -r USER@IP /home/USER/FILE/FOLDER /home/local/machine # copy from server to localmachine | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | scp -r /home/USER/local/machine/file/folder USER@IP:/home/USER/VPS | |
</source> | </source> | ||
− | == | + | == System Commands & Services == |
<source lang="bash"> | <source lang="bash"> | ||
− | + | sudo apt-get update && sudo apt-get install # Updates n upgrades system to latest | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | crontab -e # the crontab (short for "cron table") is a list of commands that are scheduled to run at regular time intervals on your computer system | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | sudo nano /etc/default/grub # change grub options (boot timer) | |
</source> | </source> | ||
− | |||
− | |||
− | |||
− | + | == System Info == | |
− | + | ||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | dmidecode | less # Shows bios information | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | lscpu # Shows cpu/hardware information | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | lspci # List all PCI devices | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | lsusb # List all USB devices | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | lsblk # List all Hard disks, Cd drives etc | |
</source> | </source> | ||
− | |||
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | cat /proc/meminfo # Shows memory information | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | cat /proc/version # Shows current running kernal version | |
</source> | </source> | ||
− | |||
− | |||
− | |||
− | + | == Shutdown/Reboot == | |
− | |||
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | shutdown -r +60 # restarts in 60mins | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | shutdown -h +60 # shutdown in 60mins | |
</source> | </source> | ||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | poweroff # shuts system down | |
</source> | </source> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | reboot # restarts computer | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | init 6 # same as reboot | |
</source> | </source> | ||
− | == | + | == Account Management == |
<source lang="bash"> | <source lang="bash"> | ||
− | + | useradd # Adds a user | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | useradd -m -d # Create a new user and makes a home directory for the user and define the home directory /home/DIR/FOR/USER | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | userdel # Deletes a user</source> | |
− | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | usermod -L USER # Locks the user from logging in | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | usermod -U USER # Unlocks the user so they can log in again | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | tail /etc/shadow | |
</source> | </source> | ||
− | |||
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | tail /etc/passwd | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | tail /etc/group | |
</source> | </source> | ||
+ | #Note users will have a "!" after their name if they are locked out of their account | ||
+ | to check this type in the above shadow command | ||
− | == | + | == File Permissions == |
− | + | (R)ead=4 | |
− | + | (W)rite=2 | |
− | + | (X)ecute=1 | |
+ | d=directory | ||
+ | l=link | ||
+ | 4+2+1 = (r+w+x) = 7 | ||
+ | 4+2 = (r+w) = 6 | ||
+ | 4+1 = (r+x) = 5 | ||
+ | 4 = (r) = 4 | ||
+ | 2+1 = (w+x) = 3 | ||
+ | 2 = (w) = 2 | ||
+ | 1 = (x) = 1 | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | chmod xxx dir # Change all files in a single directories permissions | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | chmod -R xxx dir # Change all file/folders permissions recursively | |
</source> | </source> | ||
− | |||
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | chown owner:group DIRECTORYNAME # Changes the owner and group name of files | |
</source> | </source> | ||
Line 447: | Line 435: | ||
− | == | + | == Git == |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | git add . # add all files for committing | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | git commit -am "COMMIT MESSAGE" # commit the changes locally | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | git push origin master # push changes to the server | |
</source> | </source> | ||
− | == | + | == Crontab Script Commands == |
− | |||
− | |||
+ | <source lang="bash"> | ||
+ | @reboot macchanger -r enp4s0 # (or eth0) # changes to random mac address on each reboot | ||
+ | </source> | ||
+ | == Handy things to remember == | ||
+ | <source lang="bash"> | ||
+ | CTRL r # to search for previously used COMMAND | ||
+ | </source> | ||
+ | <source lang="bash"> | ||
+ | CTRL p # shows previously used COMMAND | ||
+ | </source> | ||
+ | <source lang="bash"> | ||
+ | CTRL a # brings you to begin of line | ||
+ | </source> | ||
+ | <source lang="bash"> | ||
+ | CTRL e # brings to the end of line | ||
+ | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | tail -f FILENAME # this will follow the file while it's being edited | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | echo "some kind of text" > example.text # this will overwrite the .text file with the quoted line | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | echo "new line of text" >> example.text # this will write the quoted line on a new line | |
+ | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | alias COMMANDNAME="DESIREDNAME" # this will temporarily save a command to the desired name | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | echo "alias COMMANDNAME=\"DESIREDNAME\";" >> ~/.bashrc # this will permanently save a desired command to the bash file | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | && # chain commands together | |
</source> | </source> | ||
+ | |||
+ | |||
+ | == Examples of Things == | ||
+ | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | ls -alh /home/user/some/random/place >> ANYNAME # cat ANYNAME to see it show the directory with info | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | grep WHATEVERSEARCHINGFOR ./* # Useful for findings things.. If successful this will print out what it finds in the shell | |
</source> | </source> | ||
− | |||
− | |||
− | |||
+ | == Random Password Generators == | ||
− | |||
− | |||
− | |||
<source lang="bash"> | <source lang="bash"> | ||
− | + | openssl rand -base64 32 # generates random 32 character password | |
</source> | </source> | ||
<source lang="bash"> | <source lang="bash"> | ||
− | + | </dev/urandom tr -dc 'A-Za-z0-9!"#$%&'\''()*+,-./:;<=>?@[\]^_`{|}~' | head -c 10 ; echo # Sauls random character/symbol generated password command | |
</source> | </source> |
Revision as of 22:07, 23 August 2018
Contents
Linux Commands
cd # Home directory or changes directory
cd .. # Up a directory and to up 2 directories ../.. and so on
cd - # Returns you to the directory you previously were in
cd / # Changes directory to root
ls # Lists the files that are in a directory
ls –a # Shows all files/hidden files in a directory
ls –al # Shows all files/hidden files and time/write permissions in a directory
ls -alh # Shows same as above command but shows file sizes in a better readable format
ls -l # Shows the files and write permissions in the directory
ls / # Shows the contents of the root directory
cat <file name. extension> # Prints the contents of a file on the shell
mkdir <Directory Name> # Makes a directory
mkdir -p EXAMPLE/RIGHT/IN/HERE # Makes multiple folders in the directory created
mv /FILE/NAME/OR/DIR /TO/DIR/WANTED # Moves a file to a directory or renames a file
rm <FILE NAME> # Removes a file
rmdir <DIRECTORY> # Removes an empty directory
rm –r # Removes a directory and its contents
rm -rf # Force deletes everything
rm –rf / # Deletes everything under root directory
sudo # Runs command as sudo
sudo -i # Changes to root privellages
sudo su # Gives SUPERUSER privellages
man <COMMAND> # Displays how a command can be used and what it does
grep # searching, finding, filtering command
top # Shows running processes
htop # Shows more information than top and in more detail
ps -A # Shows all running processes
kill PID # Kills process under a certain PID
kill -9 PID # Force kills a process that wont kill normally
sudo killall NAME # Kill all processes under the NAME
sudo pkill -u USER # Kills all USER processes
head FILENAME # Prints the first 10 lines
tail FILENAME # Prints the last 10 lines
clear # Clears the screen
pwd # Print working directory
<file name. extension> # Makes a file in current directory ##unsure of this##
cal # Shows current calender date (also cal mm/yy)
whatis # Type a command after to see a brief description of what it does/is
adduser USERNAME # Create a USER
adduser USERNAME sudo # Adds USER to the sudo group
who # Shows current users on the machine and when they logged in
w # Shows whos logged in, from where, how long and what they're doing
nano # Edit a text file
vi # Nano is better...
vim # Another editor... type vimtutor on commandline to learn more
sort # Sort lines of text files
wc # Wordcount a text file
rig # Random Identity Generator
apt-cache search # ??
Networking
ifconfig # Shows network info IP/MAC address
sudo netdiscover # Shows who's on the network and identifies the ip address of each connection
sudo lsof -i # Lists the open ports and the process that owns them (to see which process is bound to port use :PORTNUMBER)
sudo netstat # Seeing what might be exposed to the network
sudo netstat -tulpn # t=tcp, u=udp ports, l=listening ports, p=processes, n=numerical
sudo macchanger -s enp4s0/eth0/wps/ # To see mac addresses
sudo macchanger -r enp4s0 # Changes the current mac address to a new one
ssh -NCD 1080 user@ip # Proxy network traffic over port 1080 (edit below settings on firefox to port traffic correctly)
Manual Proxy Configuration Socks Host: localhost port: 1080
SSH
ssh-keygen -t # creates a key in .ssh
sudo nano /etc/ssh/sshd_config # change ssh parameters (key logging/password authentication)
sudo service ssh restart # saves ssh modifications
ssh-copy-id USER@IP # saves the pub key to be known as an authenticated key
scp -r USER@IP /home/USER/FILE/FOLDER /home/local/machine # copy from server to localmachine
scp -r /home/USER/local/machine/file/folder USER@IP:/home/USER/VPS
System Commands & Services
sudo apt-get update && sudo apt-get install # Updates n upgrades system to latest
crontab -e # the crontab (short for "cron table") is a list of commands that are scheduled to run at regular time intervals on your computer system
sudo nano /etc/default/grub # change grub options (boot timer)
System Info
dmidecode | less # Shows bios information
lscpu # Shows cpu/hardware information
lspci # List all PCI devices
lsusb # List all USB devices
lsblk # List all Hard disks, Cd drives etc
cat /proc/meminfo # Shows memory information
cat /proc/version # Shows current running kernal version
Shutdown/Reboot
shutdown -r +60 # restarts in 60mins
shutdown -h +60 # shutdown in 60mins
poweroff # shuts system down
reboot # restarts computer
init 6 # same as reboot
Account Management
useradd # Adds a user
useradd -m -d # Create a new user and makes a home directory for the user and define the home directory /home/DIR/FOR/USER
userdel # Deletes a user
usermod -L USER # Locks the user from logging in
usermod -U USER # Unlocks the user so they can log in again
tail /etc/shadow
tail /etc/passwd
tail /etc/group
- Note users will have a "!" after their name if they are locked out of their account
to check this type in the above shadow command
File Permissions
(R)ead=4 (W)rite=2 (X)ecute=1 d=directory l=link 4+2+1 = (r+w+x) = 7 4+2 = (r+w) = 6 4+1 = (r+x) = 5 4 = (r) = 4 2+1 = (w+x) = 3 2 = (w) = 2 1 = (x) = 1
chmod xxx dir # Change all files in a single directories permissions
chmod -R xxx dir # Change all file/folders permissions recursively
chown owner:group DIRECTORYNAME # Changes the owner and group name of files
mail # Checks mail for current user
mail -s "SUBJECT" USER < /home/USER/test.text # sends a mail to the user with test.text as the body
mail -f USER # Checks mail for selected user
mail -f guest # checks guest messages
Piping & Redirection
cat /FILE/IN/A/DIRECTORY | less # Shows in a opened document view without clogging the terminal
cat /FILE/IN/A/DIRECTORY | espeak # Speaks the text document in linux voice
Git
git add . # add all files for committing
git commit -am "COMMIT MESSAGE" # commit the changes locally
git push origin master # push changes to the server
Crontab Script Commands
@reboot macchanger -r enp4s0 # (or eth0) # changes to random mac address on each reboot
Handy things to remember
CTRL r # to search for previously used COMMAND
CTRL p # shows previously used COMMAND
CTRL a # brings you to begin of line
CTRL e # brings to the end of line
tail -f FILENAME # this will follow the file while it's being edited
echo "some kind of text" > example.text # this will overwrite the .text file with the quoted line
echo "new line of text" >> example.text # this will write the quoted line on a new line
alias COMMANDNAME="DESIREDNAME" # this will temporarily save a command to the desired name
echo "alias COMMANDNAME=\"DESIREDNAME\";" >> ~/.bashrc # this will permanently save a desired command to the bash file
&& # chain commands together
Examples of Things
ls -alh /home/user/some/random/place >> ANYNAME # cat ANYNAME to see it show the directory with info
grep WHATEVERSEARCHINGFOR ./* # Useful for findings things.. If successful this will print out what it finds in the shell
Random Password Generators
openssl rand -base64 32 # generates random 32 character password
</dev/urandom tr -dc 'A-Za-z0-9!"#$%&'\''()*+,-./:;<=>?@[\]^_`{|}~' | head -c 10 ; echo # Sauls random character/symbol generated password command