CipherNotes
681 subscribers
60 photos
16 videos
18 files
124 links
Интересное и бес/полезное вперемешку.
Основные направления: криптография, информационная безопасность, reverse engineering.
Связь/реклама: @CipherDecoder
Download Telegram
Скрипт начальной настройки сервера 👩‍💻

Небольшой набор команд, которые пригодятся при первоначальной настройке сервера на Linux

Начальный setup:
ОС: Ubuntu 22.04 (будет работать практически на любой свежей debian-based)
Доступ: root (других пользователей нет)

Сначала выполните полный апгрейд системы и ребут:
#Do full update & upgrade
echo -e "\nUpdating repos and upgrading system..."
apt update && apt upgrade -y
echo -e -n "\nIt's recommended to reboot server after upgrade\nPress ENTER to reboot..."; read; reboot


Далее следующий скрипт (Отредактируйте NEW_USER в секции VARIABLES!):
#First setup script

#VARIABLES, change NEW_USER!
export NEW_USER=admin #new user to create
export NYHOME=/home/$NEW_USER #DON'T TOUCH IT
export ZSH_CUSTOM=$HOME/.oh-my-zsh/custom #DON'T TOUCH IT

#Adding new user
id -u $NEW_USER &>/dev/null || (echo -e -n "\nNow you will be asked to set password for $NEW_USER. Don't fear if keystrokes will not be printed, it's default behaviour for password typing on Linux\nPress ENTER..."; read; adduser $NEW_USER)

#Installing additional packages
echo -e "\nInstalling additional packages"
apt install -y htop python3 python3-pip ranger curl nano wget git vim zsh

#Oh-My-ZSH installation
echo -e -n "\nInstalling Oh-My-ZSH twice (for root and $NEW_USER), agree with all prompts during installation. You will be asked for $NEW_USER's password (had been configured in previous step) on second installation\nPress ENTER..."
read
sh -c "export RUNZSH=no;$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
cd $NYHOME;sudo -H -u $NEW_USER sh -c "export RUNZSH=no;$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)";cd $HOME

#Oh-My-ZSH Theme and Plugins
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git $HOME/.oh-my-zsh/custom/themes/powerlevel10k
cd $NYHOME;sudo -H -u $NEW_USER sh -c "git clone --depth=1 https://github.com/romkatv/powerlevel10k.git $NYHOME/.oh-my-zsh/custom/themes/powerlevel10k";cd $HOME
git clone https://github.com/zsh-users/zsh-autosuggestions.git $ZSH_CUSTOM/plugins/zsh-autosuggestions
cd $NYHOME;sudo -H -u $NEW_USER sh -c "git clone https://github.com/zsh-users/zsh-autosuggestions.git $NYHOME/.oh-my-zsh/custom/plugins/zsh-autosuggestions";cd $HOME
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting
cd $NYHOME;sudo -H -u $NEW_USER sh -c "git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $NYHOME/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting";cd $HOME
sed -i 's*ZSH_THEME="robbyrussell"*ZSH_THEME="powerlevel10k/powerlevel10k"*' $HOME/.zshrc
sed -i 's*plugins=(git)*plugins=(git zsh-autosuggestions zsh-syntax-highlighting)*' $HOME/.zshrc
cd $NYHOME;sudo -H -u $NEW_USER sh -c "sed -i 's*ZSH_THEME=\"robbyrussell\"*ZSH_THEME=\"powerlevel10k/powerlevel10k\"*' $NYHOME/.zshrc; sed -i 's*plugins=(git)*plugins=(git zsh-autosuggestions zsh-syntax-highlighting)*' $NYHOME/.zshrc";cd $HOME

echo -e -n "\nSetup finished! It's recommended to reboot server\nPress ENTER to reboot..."; read; reboot

#SCRIPT WORKS, PARTIALLY FINISHED, WILL BE UPDATED


В принципе, это готовая минималистичная заготовка для вашего post-installation скрипта для настройки серверов. Он обновляет систему, создаёт пользователя с правами sudo, устанавливает дополнительные пакеты, Oh-My-ZSH и must-have плагины для него. Пользуйтесь)

P.S. При установке добавляется новый пользователь. По канонам секурности и администратирования рекомендуется работать на сервере под обычным пользователем (дабы не наломать дров и не дай бог словить какую-нибудь гадость под суперпользователем)

#полезное #linux #server #admin
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥21😨1