@@ -9,6 +9,7 @@ webpage_path="/var/www/html/index.html"
9
9
webpage_url=" https://raw.githubusercontent.com/mdgspace/server-setup/master/downloads/index.html"
10
10
banner_url=" https://raw.githubusercontent.com/mdgspace/server-map/main/banner.sh"
11
11
system_wide_bashrc=" /etc/bash.bashrc"
12
+ system_skel_bashrc=" /etc/skel/.bashrc"
12
13
aliases_path=" /etc/.bash_aliases"
13
14
aliases_url=" https://raw.githubusercontent.com/mdgspace/server-setup/master/downloads/aliases.sh"
14
15
@@ -72,6 +73,39 @@ sudo snap install --classic certbot
72
73
sudo ln -s /snap/bin/certbot /usr/bin/certbot
73
74
# endregion scripts/install.sh
74
75
76
+ # region scripts/shell.sh
77
+ sudo chmod a+r " $system_wide_bashrc "
78
+
79
+ sudo sh -c " echo '' >> '$system_wide_bashrc '"
80
+ sudo sh -c " echo '# Custom configuration' >> '$system_wide_bashrc '"
81
+
82
+ sudo sh -c " echo 'export server_name=$server_name ' >> '$system_wide_bashrc '"
83
+
84
+ # Beautify the bash prompt
85
+ ps1_var=" PS1='\[\e[92m\]\u@${server_name} \[\e[0m\]:\[\e[91m\]\w\\ $\[\e[0m\] '"
86
+ sudo sh -c " echo '' >> '$system_skel_bashrc '"
87
+ sudo sh -c " echo '# Custom configuration' >> '$system_skel_bashrc '"
88
+ sudo sh -c " echo \" $ps1_var \" >> '$system_skel_bashrc '"
89
+
90
+ echo " " >> " $HOME /.bashrc"
91
+ echo " # Custom configuration" >> " $HOME /.bashrc"
92
+ echo " $ps1_var " >> " $HOME /.bashrc"
93
+
94
+ # Banner (server-map)
95
+ response=$( curl -s $banner_url )
96
+
97
+ # Delete first line ("$server_name" variable)
98
+ modified_response=$( echo " $response " | sed " 1d" )
99
+
100
+ sudo sh -c " echo '# Banner' >> '$system_wide_bashrc '"
101
+ sudo sh -c " echo '$modified_response ' >> '$system_wide_bashrc '"
102
+
103
+ # Aliases
104
+ sudo curl -o " $aliases_path " " $aliases_url "
105
+ sudo chmod a+r " $aliases_path "
106
+ sudo sh -c " echo '. \" $aliases_path \" ' >> '$system_wide_bashrc '"
107
+ # endregion scripts/shell.sh
108
+
75
109
# region scripts/iam.sh
76
110
sudo usermod -aG docker $USER
77
111
@@ -82,23 +116,23 @@ sudo usermod -aG docker developers
82
116
83
117
# Generate a new key pair
84
118
ssh-keygen -t rsa -b 2048 -f temp_rsa_key -N " "
85
- PUBLIC_KEY=$( cat temp_rsa_key.pub)
86
- PRIVATE_KEY=$( cat temp_rsa_key)
87
119
88
- rm temp_rsa_key temp_rsa_key.pub
120
+ echo " ssh info for developers (non root users):"
121
+ echo " ------Copy the following private key and save it in a secure place------"
122
+ cat temp_rsa_key
123
+ echo " ----------------------------------------------------------------------"
124
+
125
+ PUBLIC_KEY=$( cat temp_rsa_key.pub)
89
126
90
127
sudo mkdir /home/developers/.ssh
91
128
sudo chown developers:developers /home/developers/.ssh
92
129
sudo chmod 700 /home/developers/.ssh
93
130
94
- echo " ssh info for developers (non root users):"
95
- echo " ------Copy the following private key and save it in a secure place------"
96
- echo $PRIVATE_KEY
97
- echo " ----------------------------------------------------------------------"
98
-
99
131
sudo sh -c " echo $PUBLIC_KEY >> /home/developers/.ssh/authorized_keys"
100
132
sudo chown developers:developers /home/developers/.ssh/authorized_keys
101
133
sudo chmod 600 /home/developers/.ssh/authorized_keys
134
+
135
+ rm temp_rsa_key temp_rsa_key.pub
102
136
# endregion scripts/iam.sh
103
137
104
138
# region scripts/webpage.sh
@@ -112,37 +146,6 @@ sudo sh -c "echo '$modified_html_content' > $webpage_path"
112
146
echo " Webpage created at $webpage_path "
113
147
# endregion scripts/webpage.sh
114
148
115
- # region scripts/shell.sh
116
- sudo chmod a+r " $system_wide_bashrc "
117
-
118
- sudo sh -c " echo '' >> '$system_wide_bashrc '"
119
- sudo sh -c " echo '# Custom configuration' >> '$system_wide_bashrc '"
120
-
121
- sudo sh -c " echo 'export server_name=$server_name ' >> '$system_wide_bashrc '"
122
-
123
- # Beautify the bash prompt
124
- ps1_var=" PS1='\[\e[92m\]\u@${server_name} \[\e[0m\]:\[\e[91m\]\w\\ $\[\e[0m\] '"
125
- sudo sh -c " echo '$ps1_var ' >> '$system_wide_bashrc '"
126
-
127
- # Banner (server-map)
128
- response=$( curl -s $banner_url )
129
-
130
- # Delete first line ("$server_name" variable)
131
- modified_response=$( echo " $response " | sed " 1d" )
132
-
133
- sudo sh -c " echo '# Banner' >> '$system_wide_bashrc '"
134
- sudo sh -c " echo '$modified_response ' >> '$system_wide_bashrc '"
135
-
136
- # Aliases
137
- sudo curl -o " $aliases_path " " $aliases_url "
138
-
139
- if [ -f ~ /.bash_aliases ]; then
140
- . ~ /.bash_aliases
141
- fi
142
-
143
- sudo sh -c " echo '. $aliases_path ' >> '$system_wide_bashrc '"
144
- # endregion scripts/shell.sh
145
-
146
149
# region scripts/verify.sh
147
150
# Verify Installation
148
151
175
178
if ! id -u developers & > /dev/null; then
176
179
echo " non root user 'developers' is not created"
177
180
fi
178
-
179
- if [ ! -f /home/developers/.ssh/authorized_keys ]; then
180
- echo " SSH key for developers is not created"
181
- fi
182
-
183
- # Verify Configuration
184
- if [ ! -f /var/www/html/index.html ]; then
185
- echo " webpage is not created"
186
- fi
187
181
# endregion scripts/verify.sh
188
182
189
183
0 commit comments