2019-01-09 03:13:27 -07:00
|
|
|
# My standard configuration files for Debian and basic services
|
|
|
|
|
|
|
|
This is a collection of several configuration files that I use when setting up a
|
|
|
|
BASIC bare-bones Debian system. Quite often, such a system will become
|
|
|
|
something else like a webserver, git-server, cloud platform, programming
|
|
|
|
workstation, etc. Therefore, only a few core files applicable to nearly every
|
|
|
|
conceivable installation are included here.
|
|
|
|
|
|
|
|
## Included files
|
|
|
|
|
|
|
|
### bash template files
|
|
|
|
|
|
|
|
#### bash.rc
|
|
|
|
|
|
|
|
Included are *.bashrc* files for both new users (in the */etc/skel/* directory)
|
|
|
|
and the root user. These files are the Debian default files. They are included
|
|
|
|
and copied so that user profiles start out at baseline settings and pull all
|
|
|
|
initial customizations from */etc/bash.bashrc*. Users are free to alter their
|
|
|
|
*.bashrc* as they see fit and those settings will override or add to the ones
|
|
|
|
I've included in */etc/bash.bashrc*
|
|
|
|
|
|
|
|
#### profile
|
|
|
|
|
|
|
|
This is the Debian default *profile* and is copied to */etc/profile* to return
|
|
|
|
the system to a baseline configuration. Again, this is done to ensure that only
|
|
|
|
*/etc/bash.bashrc* is providing initial customizations to users.
|
|
|
|
|
|
|
|
#### bash.bashrc
|
|
|
|
|
|
|
|
Of the bash customization files, this is the only one that is NOT in a default
|
|
|
|
configuration. I have added the following customizations I find useful
|
|
|
|
especially for new users and system admins:
|
|
|
|
|
|
|
|
- colourized directory listings with built-in automatic colour settings
|
|
|
|
- changed prompt to include 24-hour clock, username, hostname and current
|
|
|
|
directory display
|
|
|
|
- username changes to RED when working as ROOT (uid=0)
|
|
|
|
- added the following command aliases
|
|
|
|
|
|
|
|
alias|full command|explanation
|
|
|
|
---|---|---
|
|
|
|
ll|ls -l|default 'ls' output
|
|
|
|
l|ls -lAsh --group-directories-first|far more useful and robust file display including sizes, permissions and owners
|
|
|
|
rm|rm -i|confirmation prompt when deleting file
|
|
|
|
mv|mv -i|confirmation prompt when moving file would result in overwriting existing file
|
|
|
|
cp|cp -i|confirmation prompt when copying file would result in overwriting existing file
|
|
|
|
|
|
|
|
### nano defaults (nanorc)
|
|
|
|
|
|
|
|
The following options have been enabled/set in nano to provide what I feel is an
|
|
|
|
easier editing experience especially for people coming from a Windows background
|
|
|
|
and new users/admins.
|
|
|
|
|
|
|
|
- 'rebind' numeric keypad to fix problems with using keypad with some SSH clients
|
|
|
|
- set 'smart home' some home key is useful
|
|
|
|
- allow opening multiple files at once
|
|
|
|
- always display line numbers
|
|
|
|
- constantly display cursor position at the bottom of the screen
|
|
|
|
- set vim lock-files
|
|
|
|
- autoindent ON, tab-size of 4 spaces
|
|
|
|
- convert tabs to spaces
|
|
|
|
- turn off hard line wrapping
|
|
|
|
- turn ON soft line wrapping for ease of readability
|
|
|
|
- closing 'brackets' (for alignment purposes) set as: "')>]}
|
|
|
|
- cut to end of line by default
|
|
|
|
- set proper bracket matching (ie. "<" matches ">", etc.)
|
|
|
|
- turned on default colours so nano doesn't look so drab
|
|
|
|
- added the following key-bindings
|
|
|
|
|
|
|
|
binding|fuction
|
|
|
|
---|---
|
|
|
|
alt-c/alt-C|copy selected text
|
|
|
|
alt-x/alt-X|cut selected text
|
|
|
|
alt-v/alt-V|paste text on clipboard
|
|
|
|
|
|
|
|
### time syncronization settings (timesyncd.conf)
|
|
|
|
|
|
|
|
This file configures *systemd-timesyncd.service* and allows for very simple
|
|
|
|
NTP-sync setup. Simply edit the **NTP=* to list your desired timeservers,
|
|
|
|
each separated by a single space. In the event those timeservers are not
|
|
|
|
available, you can configure back servers by listing them on the
|
|
|
|
**FallbackNTP=** line, again space delimited.
|
|
|
|
|
|
|
|
I've set the default in this file to be the worldwide NTP.org servers. This
|
|
|
|
should work for pretty much anyone that uses this file, but you really should
|
|
|
|
customize the list to use geographically closer timeservers or the timeserver on
|
|
|
|
your LAN, etc.
|
|
|
|
|
|
|
|
### SSH server configuration (sshd_config)
|
2018-07-21 16:57:17 -06:00
|
|
|
|